1.用户交互scanner
Next()
public class demo1 {
public static void main(String[] args) {
//创建一个scanner对象
Scanner scanner = new Scanner(System.in);
System.out.println("请使用next方式进行接收:");
//判断有无输入字符
if(scanner.hasNext()){
String str=scanner.next();
System.out.println("输入的内容是"+str);
}
//关闭scanner,否则一只占用资源
scanner.close();
}
}
/*输出结果是:
请使用next方式进行接收:
happy newyear
输入的内容是happy
*/
Nextline()
public class demo2 {
public static void main(String[] args) {
//创建一个scanner对象
Scanner scanner = new Scanner(System.in);
System.out.println("请使用nextline方式进行接收:");
//判断有无输入字符
if(scanner.hasNextLine()){
String str=scanner.nextLine();
System.out.println("输入的内容是"+str);
}
//关闭scanner,否则一只占用资源
scanner.close();
}
}
/*
请使用nextline方式进行接收:
happy newyear
输入的内容是happy newyear
*/
一定注意close掉对象,否则一直占用
2.scanner进阶使用
在while中使用scanner
public class demo2 {
public static void main(String[] args) {
//创建一个scanner对象
Scanner scanner = new Scanner(System.in);
//判断有无输入字符
double sum=0;
int m=0;
while(scanner.hasNextDouble())
{
double x=scanner.nextDouble();
sum+=x;
m++;
}
System.out.println(""+sum);
System.out.println(""+m);
//关闭scanner,否则一只占用资源
scanner.close();
}
}
***跳过顺序结构,if,switch,while,dowhile,for, break,coutinue,goto
3.for循环
System.out.println();
System.out.print();
打印99乘法表
for(int i=1;i<10;i++)
{
for(int j=1;j<=i;j++)
{
System.out.print(""+i+"*"+j+"="+(i*j)+"\t");
}
System.out.println();
}
快捷方式:5.for
4.增强for
用于遍历数组
int[] numbers={1,2,3};
for(int x:numbers){
System.out.print(x+"\t");
}
debug
5.方法
方法名
· 函数名用首字母大写的英文单词组合表示(如用动词+名词的方法),其中至少有一个动词
· 应该避免的命名方式
§ 和继承来的函数名一样。即使函数的参数不一样,也尽量不要这么做,除非想要重载它
§ 只由一个动词组成,如:Save、Update。改成如:SaveValue、UpdateDataSet则比较好
· 函数参数的命名规则
§ 函数参数应该具有自我描述性,应该能够做到见其名而知其意
§ 用匈牙利命名法命名
public static void main(String[] args) {
int sum=add(1,2);
System.out.println(sum);
}
public static int add(int a,int b)
{
return a+b;
}
6.方法的重载
要求
7.命令行传参
先用javac进行编译
再回到代码的包的上层,开始执行
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("args["+i+"]"+args[i]);
}
}
4.
8.可变参数
多个同类型的参数,数量可以不确定
只能有一个,且放在参数的最后
public class demo2 {
public static void main(String[] args) {
demo2 demo=new demo2();
demo2.test(1,2,34);
}
public static void test(double d,int ... x)
{
System.out.println(x[1]);
}
}
递归调用,没看
9.数组
申明数组
int[] nums1;//首选
int nums2[];
创建数组
dataType[] arrayRefVar =new dataType[arraySize];
nums1=new int[10];
给数组赋值
获取数组长度
nums1.length
声明数组
放在栈中,并不实际存在
创建数组
放在堆中
静态初始化
int[] a={1,2,3,4,5};
动态初始化
int[] b;
b[0]=1;
...
11.arrays类详细
在idea中输入Arrays
选择goto,选择deceleration and usages,选择左下角structure,可以查看arrays类的方法目录
Arrays.sort()等
12.稀疏数组