java基础知识二 方法与数组

Scanner

java.util.Scanner;获取用户的输入。

hasnext,hasnextline,next(不能得到空格),nextline

import java.util.Scanner;
public class demo {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        if(s.hasNext()){
            String str = s.next();
            System.out.println(str);
        }
        s.close();
    }
}

hasnextint()

nextint()

结构

if else for (;😉

while do while

switch() case a: default:

break continue

打印三角形 1,3,5,7,9

方法

System.out.println()

System是一个类,out是一个对象,println是一个方法

方法是语句的集合,它们组合用来执行功能(main方法由电脑来管)

  1. 方法是解决一类问题的步骤的有序组合
  2. 方法包含于类或对象中
  3. 方法在程序中被创建,在其他地方被引用
public class demo {
    public static int addx(int x,int y){  //不能直接写public int,而是 public static int
        return x+y;						  //这是static 类方法,不用对象前,有利于调用
    }
    public static void main(String[] args) {
        int a = 1, b=2,c;
        c = addx(a,b);                    //这样才能引用
        System.out.println(c);
    }
}

方法的定义

修饰符 返回值类型 方法名 (参数类型 参数名){}

参数:形参,实参(类似于c++)

java是值传递,而不是引用传递(c有的是值传递,有的是引用传递)

方法的重载

在一个类中,有相同的名称,但参数不同,返回值类型也不同

  1. 方法名相同
  2. 参数列表不同
  3. 仅仅返回值类型不同不可以重载

编译器会根据参数列表一个一个的匹配

命令行传参

传递命令行参数给main, 就是那个 args[]

javac Demo.java

java Demo.java

cd…/cd…/cd…/

java com.dai.method.Demo

this is dai

args = this is dai

可变参数

在方法声明中,在指定参数类型后加一个省略号

public class demo01 {
    public static void main(String[] args) {
        demo01 demo = new demo01();  //第二种方法,传递方法
        demo.printMax(1,2,3,4,5);
    }

    public static void printMax(int... i){
        int result = 0;
        for(int j =0 ; j<i.length ; j++){
            if(i[j]>result) result = i[j];
        }
        System.out.println(result);
    }
}

数组

内存分析:堆,栈,方法区

堆:存放new的对象和数组

栈:存放基本变量类型

静待初始化:int[] a={1,2,3…}

动态初始化:int[] b=new int[10]

注意:

数组各单位元素被隐式初始化为0

数组本身就是对象,对象存放在堆中

ArrayIndexOutOfBoundsException:下标越界

数组的使用

arrays.for for(int array : arrays) 无下标

int[] arrays ,作为参数

返回值 array

多维数组

Arrays类

java.util.Arrays 先看源码,左边structures看方法

方法自己看

稀疏数组

大部分元素为同一个值

行,列,值

int[][] array2 = new int [sum+1][3];
//然后转换
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值