日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

常用API(一)

發布時間:2024/3/13 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常用API(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.Scanner類 (Scanner類是在java.util包下的,需要導包,而在java.lang包下,如String則不用導包)

1.1Scanner類是java里面已經創建的類,里面已經有了多個成員方法。

使用步驟: 1.導包:
import 包路徑.類名稱
2.創建對象:
類 對象 = new 類();
3.使用:

Scanner in=new Scanner(System.in); int a=in.nextInt();

總結: 我們在鍵盤輸入的其實都是字符串在Scanner用 in.nextInt方法將字符串"32’轉化為32

1.2 Scanner練習:比較三個數大小

Scanner in=new Scanner(System.in);//System.in等于從鍵盤輸入。System.out.println("請輸入第一個數字:");int a=in.nextInt();System.out.println("請輸入第一個數字:");int b=in.nextInt();System.out.println("請輸入第一個數字:");int c=in.nextInt();int max=a>b? a:b;int max1=max>c ?max:c;System.out.println("最大的數字為:"+max1);

2.匿名對象:

我們知道:在調用類的成員變量和成員方法時,都要創建一個對象。但是,如果有一個對象只使用唯一的一次就可以使用匿名對象。

匿名對象只有右邊的對象,沒有左邊的數字和賦值運算符。

常規: person a=new person();
匿名 : new person();

class a{String name;void showname(){System.out.println("我叫"+name);}} public class Anoymouns {void name(){System.out.println();}public static void main(String[] args) {// TODO Auto-generated method stuba a=new a();//匿名對象a.name="小明";new a().showname();//我叫null//每一個對象都有獨立的空間。所以a.name調用和匿名對象調用的不是同一個。}}

2.1 匿名對象作為方法的參數和返回值都是可以的。

package Scanner.Scanner1;import java.util.Scanner;public class Anoymousduixiang {public static void showint(Scanner in){int number =in.nextInt();System.out.println(number);}public static void main(String[] args) {// TODO Auto-generated method stub//正常使用ScannerScanner in=new Scanner(System.in);int a=in.nextInt();//匿名對象int b=new Scanner(System.in).nextInt();//使用一般方法傳遞參數// Scanner in=new Scanne(System.in);showint(in);//使用匿名對象來傳參showint(new Scanner(System.in));//用匿名對象調用成員方法**//**將方法的參數作為返回值Scanner sc=methodreturn(); //sc得到了Scanner 類的地址值,就可以調用Scannner類的成員方法。int numbers=sc.nextInt();System.out.println(numbers+" 111");}/* **方法 */public static Scanner methodreturn(){Scanner in=new Scanner(System.in);return in;} }

由此可以知道,對象能調用類里面的成員方法和成員變量有兩種創建方式

  • 類 對象= new 類();
  • 類 對象 =跟類是同一類型的成員方法的返回值
    如:
  • //**將方法的參數作為返回值(返回的是類的地址值)Scanner sc=methodreturn(); //sc得到了Scanner 類的地址值,就可以調用Scannner類的成員方法。int numbers=sc.nextInt();System.out.println(numbers+" 111");}/* **方法 */public static Scanner methodreturn(){Scanner in=new Scanner(System.in);return in;}

    3 random類的運用

    1.導包:
    import 包路徑.類名稱
    2.創建對象:
    類 對象 = new 類();
    3.使用:

    package Scanner.Scanner1;import java.util.Random;import java.util.Scanner;public class randomlei {public static void main(String[] args) {// TODO Auto-generated method stub//獲取全范圍隨機數Random a=new Random();int num=a.nextInt();System.out.println("隨機數是多少:"+num);//題目: 根據int變量的值,來獲取隨機數字,范圍是[1,n]for(int i=0;i<10;i++){ int a1=(int)((Math.random()*10+1));System.out.print(+a1+" ");}//或者for(int i=0;i<10;i++){ int num1=new Random().nextInt(10)+1;System.out.println(num1);} }}

    練習:猜數游戲:

    Scanner in=new Scanner(System.in);//猜數游戲:int numbers=new Random().nextInt(100)+1;int x=in.nextInt();while(true) { if(x>numbers){System.out.println("猜大了,范圍再小一點");}else if(x<numbers){System.out.println("猜小了,范圍再大一點");}else{System.out.println("恭喜你,猜對了!");break;}x=in.nextInt();}

    4.對象數組和ArrayList
    4.1.1 數組對象的創建

    跟數組一樣
    類 [ ] 對象=new 類[ 長度];

    下面是使用

    package Scanner.Scanner1;class person{private String name;private int age;person(String name,int age){this.age=age;this.name=name;}public void setAge(int age){this.age=age;}public int getAge(){return age;}public void setName(String name){this.name=name;}public String getName(){return name;}} public class Arrayrist {public static void main(String[] args) {person []array=new person[3];person one =new person("古力娜扎",20);person two =new person("迪麗熱巴",20);person thr =new person("馬爾扎哈",500);array[0]=one; //地址值array[1]=two; //地址值array[2]=thr; //地址值System.out.println(array[2].getAge());}}

    4.2.1. ArrayList ,E>> 泛型
    泛型 就是集合中的所有元素,全部都是統一的什么類型。
    泛型只能是引用類型,不能是基本類型。

    1.導包 import java.util

    2.創建 類 對象 =new 類();

    3.使用:

    4.3.1 創建和添加

    import java.util.ArrayList; public class ArrayList1 {public static void main(String[] args) {//備注:jdk1.7開始 右邊<>可以不寫內容,但是做左邊必須要寫// 創建了一個ArratList 集合,集合的名稱是List,里面裝的全都是String字符串類型的數據。ArrayList <String>list=new ArrayList<>();//輸出一下 list 按理說得到一個地址值System.out.println(list);//得到了[]/*注意事項:對于Arraylist數組中,直接打印的不是地址值,而是內容。如果內容為空,則得到的是一個中括號[]*///向集合中添加一些數據,需要用到add方法list.add("迪麗熱巴");list.add("古力娜扎");list.add("阿巴阿巴");System.out.println(list);//添加進去的元素都必須是字符串} }

    4.3.2
    ArrayList常用方法:
    public boolean add(E e)
    向集合中添加元素,參數的類型和泛型是一致的。(返回值表示添加是否成功)對于ArrayList集合來說add添加動作是一定成功
    的,所以可用可不用,但是其他集合不一定成功。

    public E get(int index)從集合中獲取元素,參數是索引編號,返回值就是被對應位置的元素。public E remove(int index)從集合中刪除元素,參數是索引編號,返回值是被刪除掉的元素public int size(); 獲取集合的尺寸長度,返回值是集合中包含的元素個數。下面是實踐: package Scanner.Scanner1; import java.util.ArrayList; public class ArrayList1 {public static void main(String[] args) {/*ArrayList常用方法:public boolean add(E e) 向集合中添加元素,參數的類型和泛型是一致的。public E get(int index)從集合中獲取元素,參數是索引編號,返回值就是被對應位置的元素。public E remove(int index)從集合中刪除元素,參數是索引編號,返回值是被刪除掉的元素public int size(); 獲取集合的尺寸長度,返回值是集合中包含的元素個數。 *///向ArrayList集合中添加元素ArrayList <String>list=new ArrayList<>();boolean success=list.add("麻辣香鍋");System.out.println(success);//結果是turelist.add("蔥花炒肉");list.add("鐵板豬肉");System.out.println(list);//結果是[麻辣香鍋, 蔥花炒肉]//向集合中獲取元素。String name=list.get(1);System.out.println("第二號索引位置:"+name); //第二號索引位置:蔥花炒肉//從集合中刪除元素String whoberemoved=list.remove(2);System.out.println("被刪除的菜是"+whoberemoved);//結果是被刪除的菜是鐵板豬肉//獲取集合的長度:int size=list.size();System.out.println("集合的長度是"+size);//集合的長度是2//遍歷數組ArrayList<String> list1=new ArrayList<>();list.add("古力娜扎");list.add("阿巴阿巴");list.add("馬兒扎哈");for(int i=0;i<list.size();i++){System.out.println(list.get(i));}/*結果 古力娜扎阿巴阿巴馬兒扎哈*/} }

    4.3.3
    泛型只能是引用類型,不能是基本類型 int double

    如果要ArrayList集合中儲存基本數據類型,就要用基本類型對應的 包裝類

    import java.util.ArrayList; public class demoarrast {public static void main(String[] args) {ArrayList<Integer> list =new ArrayList<>();list.add(100);list.add(200);System.out.println(list.get(1));} }

    byte Byte
    short Short
    long Long
    float Float
    double Double
    boolean Boolean

    這兩個比較特殊
    int Integer
    char Character

    //JDK1.5+ 知道這么個概念
    自動裝箱:基本類型—>引用類型
    自動拆箱:引用類型—>基本類型

    4.3.3.1下面是一些習題

    1.生成6個1-33之間的隨機整數,添加到集合,并且遍歷集合

    import com.sun.jdi.PathSearchingVirtualMachine;import java.util.ArrayList; import java.util.Random;public class demoarrast {public static void main(String[] args) {ArrayList<Integer> list =new ArrayList<>();list.add(100);list.add(200);System.out.println(list.get(1));//生成6個1-33之間的隨機整數,添加到集合,并且遍歷集合。ArrayList<Integer> num=new ArrayList<>();for (int i = 0; i < 6; i++){num.add(new Random().nextInt(33)+1);System.out.println(num.get(i));}for (int i = 0; i < list.size(); i++){System.out.println(num.get(i));}} }

    2.自定義4個學生對象,并且添加到集合,并且遍歷

    import java.util.ArrayList;class Student { private int age;private String name;Student(String name,int age){this.age=age;this.name=name;}Student(){}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}Student(String who){System.out.println("我是"+who);} }public class Arraylistpe {public static void main(String[] args) {//自定義4個學生對象,并且添加到集合,并且遍歷Student a=new Student("小明",15);Student b=new Student("小方",15);Student c=new Student("小胖",15);Student d=new Student("小朱",16);ArrayList<Student> lt=new ArrayList<>();lt.add(a);lt.add(b);lt.add(c);lt.add(d);for (int i = 0; i < lt.size(); i++){System.out.println("name:"+lt.get(i).getName()+"age:"+lt.get(i).getAge());}} }
  • 使用Arraylist集合儲存元素并且打印,打印格式{a@b@c@…}
  • import java.util.ArrayList;public class printArraylist {public static void printArraylist(ArrayList<Integer> list){System.out.print("{");for (int i = 0; i < list.size(); i++){if (i==list.size()-1){System.out.print(list.get(i));}else{System.out.print(list.get(i)+"@");}}System.out.print("}");}public static void main(String[] args) {//使用Arraylist集合儲存元素并且打印,打印格式{a@b@c@..}ArrayList<Integer> list=new ArrayList<>();list.add(100);list.add(101);list.add(102);list.add(103);//打印printArraylistprintArraylist(list);} }
  • 題目: 用一個大集合存入20個隨機數字,然后篩選其中的偶數元素放入小集合,篩選要求用自定義的方法來完成。
  • import java.util.ArrayList; import java.util.Random; public class selectArrayList {ArrayList<Integer> selectArraylist(ArrayList<Integer> num){ ArrayList<Integer> smallnum=new ArrayList<>();for (int i = 0; i < num.size(); i++){if(num.get(i)%2==0){smallnum.add(num.get(i));System.out.println(num.get(i));}}return smallnum;}public static void main(String[] args) {/*題目: 用一個大集合存入20個隨機數字,然后篩選其中的偶數元素放入小集合,篩選要求用自定義的方法來完成。*/ArrayList<Integer> num=new ArrayList<>();Random a=new Random();for (int i = 0; i < 20; i++){num.add(a.nextInt(100)+1);}selectArrayList one =new selectArrayList();one.selectArraylist(num);} }
  • String類
    java.lang.String類代表字符串
    API上說Java 程序中的所有字符串字面值(如 “abc” )都作為此類的實例實現,
    其實是說,程序當中的所有雙引號字符串,都是String類的對象(即便沒有new一個對象出來,也照樣是)

    字符串的特點:1.字符串內容不可變
  • //下面這種寫法,字符串的內容仍然是沒有改變的,//下面有兩個字符串 "Hello" "java"//sg中保存的是地址值,本來地址是Hello的0x666后來地址值變成了java的ox999String sg="Hello";System.out.println(sg); //Hellosg="java";System.out.println(sg); //java
    • 2 因為字符串內容不可改變,所以字符串是可以共享使用的。3.字符串效果上相當于是char[]字符數組,但是,底層原理是byte[]字節數組創建字符串的3+1種方式第一種,創建一個空白的字符串,不會有任何內容。public String();*///使用空參構造:String str =new String();System.out.println("第一個字符串為:"+str);第二種 根據字符數組的內容,來創建對應的字符串。public String(char [] array)*///根據字符數組來創建字符串char[] charArray={'A','B','C'};String str2=new String(charArray);System.out.println(str2);第三種 根據字節數組的內容,來創建對應的字符串public String(byte [] array)*///根據字節數組創建字符串byte[] byteArray={97,98,99};String str3=new String(byteArray);System.out.println("第三個字符串"+str3);第四種 直接創建:String str4="Hello";System.out.println(str4);5.1字符串常量池:程序中寫上的雙引號字符串,就在字符串常量池當中。

    注意:
    對于基本類型來說,是進行數值的比較
    對于引用類型來說,是進行*地址值的比較(并且引用類型都可以賦一個null值,可以是無地址
    雙引號直接寫的字符串在常量池當中,new的不在其中

    String A="def";String B="def";char []C={'d','e','f'};String D=new String( C );System.out.println(A==B); //trueSystem.out.println(A==D); //falseSystem.out.println(B==D); //falseString E="hgi";System.out.println(E==B); //false


    當我們直接用String 一個字符串,這個字符串的地址就是字符串常量池,而當我們用(基本類型)char[ ] byte[ ]去創建字符串的時候就不在常量池里面,但無論是哪一種創建方式,字符串的底層都是byte[ ]字節數組

    PS:數組和對象都是在棧里面的

    5.2字符串內容比較
    下面的這些方法都是可以用 String的對象.方法 和 " 字符串".方法

    5.2.1.public boolean equals(object obj)

    ==是進行對象地址值的比較,而字符串內容比較可以使用這兩種方法。
    public boolean equals(Object obj); 參數可以是任何對象,只有參數是一個字符串并且內容相同才給true,否則返回一個false值

    /* ==是進行對象地址值的比較,而字符串內容比較可以使用這兩種方法。public boolean equals(Object obj); 參數可以是任何對象,只有參數是一個字符串并且內容相同才給true,否則返回一個false值。 */String a="hello";String b="hello";char [] c={'h','e','l','l','o'};String d=new String(c);System.out.println(a.equals(b)); //trueSystem.out.println(a.equals( d)); //tureSystem.out.println(a.equals(c)); //字符串和字符數組比較不行 false/* 注意:1.任何方法都可以用Object來接收。2.equals方法具有對稱性,也就是a.equals(b)和 b.equals(a)。3.如果比較的雙方一個是變量,一個是常量,推薦把常量字符串寫在前面,推薦 "abc".equals(str); 不推薦 str.equals("abc");*/String str="abc";System.out.println(str.equals("abc"));//而這樣寫無地址,就會出現空指針異常 NullPointerException // String Str1=null; // System.out.println(Str1.equals("null"));

    5.2.2 public boolean equalsignorecase(只有英文才要區分大小寫)

    /*第二個 忽略大小寫,進行內容的比較(只有英文字母區分大小寫,其他都不區分大小寫)public boolean equalsIgnore(String str)*/String str2="NVDIA";System.out.println("nvdia".equalsIgnoreCase(str2)); //true

    5.3 字符串的常用方法
    1.public int length() 獲取字符串中字符串的個數,也就是 長度.

    2.public String concat(String str) 將當前字符串和參數字符串拼接成新的字符串,并且返回新的字符串

    3.public char charAt(int index) 獲取指定索引位置的的單個字符。(索引是從0開始的)

    4.public int indexof(String str) 查找參數字符串在本字符中首次出現的索引位置,如果沒有 返回—1值

    // 1.public int length() 獲取字符串中字符串的個數,也就是 長度int length = "dasdjal".length();System.out.println("字符串的長度是"+length); //字符串的長度是7// * 2.public String concat(String str) 將當前字符串和參數字符串拼接成新的字符串,并且返回新的字符串String str="HEllo";String str1="world";System.out.println(str.concat(str1)); //HElloworld // * 3.public char charAt(int index) 獲取指定索引位置的的單個字符。(索引是從0開始的)char ch = "Hello".charAt(1);System.out.println("位于1號索引位置的字符是"+ch); // 位于0號索引位置的字符是e // * 4.public int indexof(String str) 查找參數字符串在本字符中首次出現的索引位置,如果沒有 返回—1值String Original ="Helloworld";int llo = Original.indexOf("llo");System.out.println("第一次索引值"+llo); //第一次索引值 2//如果沒有就會返回一個-1值String Original2 ="Helloworld";int abc = Original2.indexOf("abc");System.out.println("第一次的索引值是"+abc); //第一次的索引值是-1

    5.4//字符串的獲取辦法
    1 . public String subString)(int dex) 從參數的位置一直截到字符串末尾,返回新字符串(包括那個參數)

    2.public String subString(int begin,int end); //左閉右開區間,截取從begin開始,一直到end結束中間的字符串

    //字符串的獲取辦法//1.public String subString)(int dex) 從參數的位置一直截到字符串末尾,返回新字符串(包括那個參數)String str= "ashdjkasdajksdhak";System.out.println(str.substring(5)); //kasdajksdhakSystem.out.println("ashdjkasdajksdhak".substring(5)); //kasdajksdhak// 2.public String subString(int begin,int end); //左閉右開區間,截取從begin開始,一直到end結束中間的字符串String str1="hdakshdkadalksksjflak";System.out.println(str1.substring(0,1)+1); //ashdjkasdajksdhakSystem.out.println(str); //str字符串沒有改變 //ashdjkasdajksdhak//我現在要取一個fau出來String str2="dasfauifhia";System.out.println(str2.substring(3,6)); //fau

    5.5
    字符串轉換的相關方法
    1.將字符串拆分成為字符數組并且將字符數組作為返回值

    2.獲得當前字符串底層的字節數組

    3.將所有的老字符串替換成新的字符串,返回替換之后的結果新字符串

    //1.將字符串拆分成為字符數組并且將字符數組作為返回值//public char[] tocharArray();String str = "jsdhaksdh";char[] chars = str.toCharArray();System.out.println(chars.length); //9System.out.println(chars[0]); //j//2.獲得當前字符串底層的字節數組//public byte[] getBytes();byte[] bytes = "jsdhaksdh".getBytes();System.out.println(bytes.length); //for (int i = 0; i < bytes.length; i++) {System.out.println(bytes[i]);}//3.將所有的老字符串替換成新的字符串,返回替換之后的結果新字符串//public String replace (CharSequence oldString,CharSequence new String)CharSequence charSequences = "jsdhaksdh".replace("jsdhaksdh","dsadasdas");System.out.println(charSequences); //dsadasdas//例子1String str2="How are you?";String str3 = str2.replace("o", "*");System.out.println(str3); //H*w are y*u?System.out.println(str2); //How are you? 原來的字符串沒有變System.out.println(str3); //H*w are y*u?//例子2 我們打游戲的時候不噴人String str4="你大爺的";String str5 = str4.replace("你大爺的", "****");System.out.println(str4); //你大爺的System.out.println(str5); //****

    5.6 分割字符串的方法
    public String[] split(String regex) 按照參數的規則,將字符串切分成若干部分。
    注意事項:
    1.split表達式其實是一個正則表達式,今后學習。
    2.有一些特殊的". ^ |“進行區分要寫成”\"
    3. 如果要保證一定,無論是什么符號只要寫成\ xxx就可以了。

    //public String[] split(String regex) 按照參數的規則,將字符串切分成若干部分。//注意事項:split表達式其實是一個正則表達式,今后學習。//有一些特殊的". ^ |"進行區分要寫成"\\"//如果要保證一定,無論是什么符號只要寫成\\ xxx就可以了。//正常寫法String str="XXX,YYY,KKK";String[] splits = str.split(",");System.out.println(splits.length); //結果是3,說明切割成功了//如果按照英文句點"."進行區分要寫成"\\"String str1="XXX:YYY:KKK";String[] splitss=str1.split(":");System.out.println(splitss.length); //結果是3,說明切割成功了for (int i = 0; i < splitss.length; i++){System.out.print(splits[i]+" "); //XXX YYY KKK }

    5.7具體的練習題

    1.定義一個方法,把數組[ 1 2 3] 按照指定的格式拼接成一個字符串 ,格式參數如下[word1#word2#word3]

    public static String Spellingarray(int [] array){String a="[";for (int i = 0; i < array.length; i++) {if(i == array.length - 1){a += "word" + array[i] + "#" + "]";}else{a+="word"+array[i]+"#";}}return a;}public static void main(String[] args) { //定義一個方法,把數組[ 1 2 3] 按照指定的格式拼接成一個字符串 ,格式參數如下[word1#word2#word3]int []array={1,2,3};System.out.println(Spellingarray(array ));//結果是:[word1#word2#word3#]}

    2.題目:統計輸入的字符串

    import java.util.Scanner; //題目:統計輸入的字符串。 public class demo1 {// 統計輸入的字符串。// 種類有 大小寫字母,數字和其他/* 1.定義四個變量,分別代表四個字符出現的速度。2.需要對字符串一個個的檢查,所以要用到方法tocharArray()3.遍歷char[]字符數組,對當前字符的種類進行判斷*/public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.println("請輸入一個字符串");String input=in.next(); //計數器int countUpper= 0;int countnumber= 0;int countlower= 0;int countother= 0; // 字符串轉化為字符數組char array[]=input.toCharArray(); //開始判斷字符串的類型for (int i = 0; i < array.length; i++) {//小寫字母if (array[i]>='a'&&array[i]<='z'){countlower++;}else if(array[i]>='A'&&array[i]<='Z'){countUpper++;}else if (array[i]>='0'&&array[i]<='9'){countnumber++;}else{countother++;}}System.out.println(countlower);System.out.println(countUpper);System.out.println(countnumber);System.out.println(countnumber);//輸入asdasKHSDGHAK**//-/*468786//輸出asdasKHSDGHAK**//-/*468786//5//8//6//7} }

    總結

    以上是生活随笔為你收集整理的常用API(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。