唉,python学的好好地,就要转java,python学精了不香吗,没办法,就先打断一下算法,讲讲java的基本用法吧
大概分一下吧,按照ACM的刷题经验,难得也不讲,就输入,输出,for循环,列表创建,条件判断这些最基础的吧,主打的就是一个速成。
首先,java是一个常用于面向对象的语言,要运行java的代码必须在函数上运行,同时在通过调用类来解决。
public class Studenttest07 {
public static void main(String[] args) {
#函数体
}
}
这个就是主函数要写这个才可以运行(最开始搞了好久不知道咋回事,还把IDE重装了一次,真是小丑)
那么怎么注释(注释真的很重要,不然别人在debug时就好难受)
注释就按照下面的写
//单行
/*
code多行
*/
就是这样写
那么在python中,就有很多数据类型,比如int ,float,list等,当然,java也是一样,就直接整理在下面了。
boolean 布尔类型
byte字节类型
char字符类型
double双浮点精度类型
float单精度浮点类型
int整型
long长整型(相比于int,数据范围更大,一般建议直接long)
short短整型
null无
声明变量,说白了就是赋值
int a=12;//设置整数类型,并赋值给a
String str="Hello World";//(一定要用双引号)
double PI=3.14159276;
在赋值时,会给变量加上一些关键字,这些关键字会改变变量的性质,如final,private,不过对于入门来说,这些还有点早了,可以自己查一下。
在java中,会一般使用数组,
在开数组时,会有下面的方法,
int[]ary=new int[10];
//这里两个int含义不同,第一个int表示数组里面每一个数字为整数,
//第二个int是表示数组的长度为10
这样子就可以开一个新的数组了
当然,用类似的方法也可以生成一个字符数组,
char [] stringArray={'H','e','l','l','o'};
String s=new String (stringArray);
//当然也可以直接这样弄个字符串,这样更简单。
String s="Hello"
记住,一定要用双引号,这和python不一样。
对于java读入,需要导入库函数,不过好像这个是早期版本,现在好像就不用来这么弄了(好耶),
那么下面就是一个输入的例子
import java.util.Scanner;
public class java_input {
public static void main(String[] args) {
Scanner scan =new Scanner(System.in);
int a=scan.nextInt();
double d=scan.nextDouble();
scan.nextLine();
String s=scan.nextLine();
}
}
就是这样,不过这里奇怪的是为什么这里要有一个scan.nextline()呢,这个有什么作用呢?这里他是读取并丢弃换行符的作用,不然会出现无法读入的问题。
下面就是关于java的输出,java的输出方法很多,一般的会进行格式化输出,但是java他更优秀的地方就是可以sout(IDEA上是这样子的,IDEA万岁)(其实就是System.out.println(),作者废话真多)。
接着就是算法赛的重头戏,那就是循环结构和条件判断,
java的条件判断有两种方式,分别为switch和if语句
public class SwitchExample {
public static void main(String[] args) {
int num = 2;
switch (num) {
case 1:
System.out.println("数字是1");
break;
case 2:
System.out.println("数字是2");
break;
case 3:
System.out.println("数字是3");
break;
default:
System.out.println("数字不是1、2或3");
}
}
}
还有就是if判断
int number = -5;
if (number > 0) {
System.out.println("这是一个正数");
} else if (number < 0) {
System.out.println("这是一个负数");
} else {
System.out.println("这是零");
}
这里if和if else的关系其实就类似python中的if 和elif的关系,这个我一直在想elif是不是就是else if的缩写,他们真的好像。
最后就是for循环,有一说一,for循环还是很好用的。
public class ForLoopExample {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
}
}
java强化for循环,好像有点像
public class EnhancedForLoopExample {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
for (int number : numbers) {
System.out.println(number);
}
}
}
直接遍历列表。。。。
那么入门的就到这里了,先截止。