java数组
Scanner
public static void main(String[] args){ Scanner scanner = new Scanner(System.in); if(scanner.hasNextLine()){//判断是否有输入 String str = scanner.nextLine();//next()读到空格为止 System.out.println(str); } scanner.close(); }
命令行传参
public static void main(String[] args) { for(int i = 0; i < args.length; i++){ System.out.println(args[i]); } }
可变参数
public static void main(String[] args) { fun(1,1,2,3,4); } //一个方法中只能有一个可变参数,必须是方法的最后一个参数 public static void fun(int x, int... i){ System.out.println(x); System.out.println(i[2]); }
数组
内存分析
-
堆
- 存放new的对象和数组
- 可以被所有的线程共享,不会存放别的对象引用
-
栈
- 存放基本类型(会包含这个基本类型的具体数值)
- 引用对象的变量(会存放这个引用在堆里面的具体地址)
-
方法区
- 可以被所有线程共享
- 包含了所有的class和static变量
遍历数组
public static void main(String[] args) { int[] ary = {1,2,3,4,5}; //无下标 for(int i: ary){ System.out.print(i + " "); } System.out.println(Arrays.toString(ary)); }
多维数组
public static void main(String[] args) { int[] ary = {1, 2, 3, 2, 5, 9, 7, 4}; for (int j = 0; j < ary.length - 1; j++) { for (int i = 0; i < ary.length - 1; i++) { if (ary[i] > ary[i + 1]) { int temp = ary[i]; ary[i] = ary[i + 1]; ary[i + 1] = temp; } } } System.out.println(Arrays.toString(ary)); }
本文作者:n1ce2cv
本文链接:https://www.cnblogs.com/sprinining/p/14523222.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步