2020-11-14 java------------巢狀遍歷集合,練習scanner和stringbuiled排序等API
巢狀集合遍歷
import java.util.ArrayList;
public class demo {
public static void main(String[] args) {
ArrayList<ArrayList<Student>> bigArraylist=new ArrayList<ArrayList<Student>>(); //建立大集合
ArrayList<Student> firstArraylist=new ArrayList<>();
Student s1=new Student("孫悟空",11);
Student s2=new Student("豬八戒",12);
Student s3=new Student("沙和尚",13);
firstArraylist.add(s1);
firstArraylist.add(s2);
firstArraylist.add(s3);
bigArraylist.add(firstArraylist);
ArrayList<Student> secondAarrylist=new ArrayList<>();
Student s11=new Student("諸葛亮",111);
Student s22=new Student("劉備",122);
Student s33=new Student("曹操",133);
secondAarrylist.add(s11);
secondAarrylist.add(s22);
secondAarrylist.add(s33);
bigArraylist.add(secondAarrylist);
ArrayList<Student> lastAarrylist=new ArrayList<>();
Student s111=new Student("楊冪",15);
Student s222=new Student("唐嫣",16);
Student s333=new Student("劉詩詩",17);
secondAarrylist.add(s111);
secondAarrylist.add(s222);
secondAarrylist.add(s333);
bigArraylist.add(lastAarrylist);
//遍歷集合
for(ArrayList<Student> bigClass: bigArraylist)
for (Student smallClass : bigClass)
System.out.println(smallClass.getName()+"--------"+smallClass.getAge());
}
}
產生10個20以內不重複的隨機數
import java.util.ArrayList;
import java.util.Random;
public class demo {
public static void main(String[] args) {
Random random=new Random();
ArrayList<Integer> array=new ArrayList<>();
int count=0;
while (count<10){
int number=random.nextInt(20)+1; //0~19
if (!array.contains(number)) {
array.add(number);
count++;
}
}
for (Integer i : array)
System.out.println(i);
}
}
鍵盤錄入多個資料,以0結束,要求在控制檯輸出這些值中的最大值
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class demo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
ArrayList<Integer> arry=new ArrayList<>();
while (true){
System.out.println("請輸入資料:");
int number=sc.nextInt();
if (number!=0){
arry.add(number);
}
else
break;
}
//toArray方法要求引數是陣列
//public <T> T[] toArray(T[] a)
Integer[] i=new Integer[arry.size()];
arry.toArray(i);
Arrays.sort(i); //Arrays工具類下sort方法
System.out.println("陣列最大值是"+i[i.length-1]);
}
}
改動一下最後能實現輸出陣列並列印最大值
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class demo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
ArrayList<Integer> arry=new ArrayList<>();
while (true){
System.out.println("請輸入資料:");
int number=sc.nextInt();
if (number!=0){
arry.add(number);
}
else
break;
}
Integer[] i=new Integer[arry.size()];
arry.toArray(i);
Arrays.sort(i);
System.out.println("陣列是:"+arryToString(i)+"最大值是:"+i[i.length-1]);
//System.out.println("陣列是:"+Arrays.toString(i)+"最大值是:"+i[i.length-1]);也能正確輸出
}
public static String arryToString(Integer[] i){
StringBuilder sb=new StringBuilder();
sb.append("[");
for (int x=0;x<i.length;x++){
if(x!=i.length-1)
sb.append(i[x]+",");
else
sb.append(i[x]);
}
sb.append("]");
return sb.toString();
}
}
寫了一個tostring方法把陣列轉換成字串
為啥用stringbuilder不用string,回顧了一下原來是string不能修改,想要定義一個能修改的字串就定義成stringbuffer或者stringbuilder型別,但是單執行緒用stringbuilder比較好,速度比較快,它沒有執行緒安全。
陣列型別沒有tostring方法嗎,為啥非要寫一個,而最後sb卻有tostring方法
原來直接i.tostring輸出的是地址值,但是可以用Arrays.toString也能正確輸出。練一下反正也行吧哈哈哈哈大可不必。
相關文章
- Java map 詳解 - 用法、遍歷、排序、常用API等Java排序API
- dom4j遍歷巢狀xml巢狀XML
- [work] python巢狀字典的遞迴遍歷Python巢狀遞迴
- 練習-jq的遍歷
- MATLAB巢狀函式練習Matlab巢狀函式
- JAVA基礎 練習-13-ArrayList集合學生物件遍歷Java物件
- 泛型方法、初始集合和集合的遍歷泛型
- 集合迭代/遍歷
- 高效遍歷匹配Json資料,避免巢狀迴圈[轉]JSON巢狀
- Collection集合的遍歷
- 如何遍歷HashMap集合?HashMap
- MVC遍歷map集合MVC
- Kotlin---集合與遍歷Kotlin
- Java遍歷Map集合的方法Java
- jsp下實現遍歷集合JS
- Map集合&&Map集合的不同遍歷【keySet()&&entrySet()】
- Elasticsearch聚合的巢狀桶如何排序Elasticsearch巢狀排序
- 按指定格式遍歷集合字串字串
- Java8集合遍歷Java
- Map集合的四種遍歷方式
- js的map遍歷和array遍歷JS
- 關於Map集合的遍歷總結
- js技巧用Map集合代替Array遍歷JS
- Java之HashMap集合簡介及遍歷JavaHashMap
- 集合框架(List儲存字串並遍歷)框架字串
- 個人練習之二叉樹的前序遍歷二叉樹
- 二叉樹排序樹的建立,遍歷和刪除二叉樹排序
- 【java】【集合】去除ArrayList中的元素、ArrayList巢狀ArrayListJava巢狀
- 使用jstl無法遍歷bean中的集合JSBean
- Python字典的遍歷,包括key遍歷/value遍歷/item遍歷/Python
- Java List集合去重、過濾、分組、獲取資料、求最值、合併、排序、跳資料和遍歷Java排序
- Java Map集合練習Java
- Java ArrayList 查詢、刪除指定元素;排序;遍歷;隨機獲取元素等常用操作Java排序隨機
- Laravel Baum 巢狀集合模型中文文件翻譯-部分Laravel巢狀模型
- iframe巢狀(等寬高比自適應:aspectRatio)巢狀
- python 字典和列表巢狀用法Python巢狀
- JsonArray和JsonObject遍歷方法JSONObject
- ArrayList和hashMap的遍歷HashMap