JDK :java Development Kit Java 开发工具包
JRE:Java Runtime Environment Java 运行时环境(只要运行java就需要安装jre)
编写java程序的流程
1.创建记事本后缀改为.java
2.如果要输出中文编码方式改为ANSI
3.打开CMD DOS命令行窗口 切换到Java源文件所在目录
4.通过javac 文件名.Java 对java进行编译(之后项目在部署或上线的时候 上传的都是字节码文件)
5通过java 文件名 进行解释运行
数据类型
整数类型,byte(1),short(2),int(4),long(4个字节,过大自动转为8个)
浮点数据类型:float,double
布尔类型:boolean
字符类型 :char
引用数据类型:数组。类。枚举,接口
类型转换
从小到大:自动转换
从大到小:强制转换
常用运算符
1.加减乘除取余
public class Try {
public static void main(String[] args) {
//加减乘除取余
int a = 3;
int b = 4;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(b/a);
System.out.println(b%a);
}
}
字符串连接符+
import java.util.Scanner;
public class Day {
public static void main(String[] args) {
System.out.println("请输入你的学号,班级,座右铭.");//提示用户输入
Scanner sc =new Scanner(System.in);
//定义并读取键盘输入数据
String no = sc.next();
int number = sc.nextInt();
String say = sc.next();
//输出
System.out.println("你叫:"+no+",你的班级"+number+",座右铭为:"+say);
}
}
import java.util.Scanner;
public class Day0123 {
public static void main(String[] args) {
System.out.println("请输入你的姓名和年龄");//提示用户输入姓名和年龄
Scanner sc = new Scanner(System.in);//键盘扫描器,创建一个Scanner类型
//创建String类型的name,int类型的age
String name;
int age;
//读取键盘输入的数据
name = sc.next();
age = sc.nextInt();
//输出姓名和年龄
System.out.println("您叫:"+name+",年龄为"+age+"岁。");
}
}
关系运算符
大于> 小于< 等于= 不等于!= >=大于等于 <=小于等于
赋值运算符 =
逻辑运算符与(&&)或(||)非(!)
与:当&&两边为真时,结果为真;(前面为假,后面不做判断)
或:任意一边为真时,结果为真;(前面为真,后面不做判断)
非:当表达式为真,结果为假;表达式为假,结果为真
自增减运算符: 加加,减减
int a=3;int b=0;
b=a++;(b=3,a=4)
b=++a;(b=4,a=4);
b=a--;(b=3,a=2)
b=--a(b=2,a=2)
public class Add {
public static void main(String[] args) {
int a = 3;//a赋值
int b = a++;//赋值b
System.out.println("b="+b);
int c = ++a;//赋值c
System.out.println("c="+c);
}
}
三目运算符
条件表达式?表达式1:表达式2
import java.util.Scanner;
public class T {
public static void main(String[] args) {
System.out.println("请输入一个数:");//提示用户输入数据
Scanner sc =new Scanner(System.in);
int a = sc.nextInt();//定义并读入
System.out.println(a>0?"你输入的是正数":(a==0?"你输入的是0":"你输入的是负数"));//输出
}
}
流程控制
在java中,任何复杂逻辑,都可用顺序,分支,循环三种结构进行描述
分支结构
概念:在java中,当需要使用条件判断,需要使用分支结构
if分支
if(条件表达式){语句块}
else{语句块}
eg:
import java.util.Scanner;
public class T3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数");
int a = sc.nextInt();
if(a>=0){
System.out.println("该数为非负数");
}else{
System.out.println("该数为负数");
}
}
}
import java.util.Scanner;
public class T2 {
public static void main(String[] args) {
System.out.println("请输入您的年龄:");//提示用户输入年龄
Scanner sc = new Scanner(System.in);
int age = sc.nextInt();
if(age>=18){
System.out.println("你可以打游戏,不受未成年限制");
}else{
System.out.println("该吃吃,该喝喝,好好学习");
}
}
}
import java.util.Scanner;
public class T4 {
public static void main(String[] args) {
System.out.println("请输入你的高考分数");
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if(a>650){
System.out.println("650来上中北大学吧,寒假都有早八哦");
}else{
if(a>=550){
System.out.println("来中北吧,人民军工第一校");
}else{
if(a>=450){
System.out.println("安安心心上中北吧");
}else{
if(a>=350){
System.out.println("你连中北也上不了");
}else{
System.out.println("洗洗睡吧");
}
}
}
}
}
}
课后练习
输出一个最大值
import java.util.Scanner;
public class If {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个数");//提示用户输入
int a = sc.nextInt();//定义并输入a
System.out.println("请输入第二个数");//提示用户输入
int b = sc.nextInt();//定义并输入b
int max = a;
if (a<b) {max = b;}
/*int max = 0;//定义最大值
//判断
if(a>b){
max = a;
}else{
max = b;
}*/
System.out.println("最大值为:"+max);//输出最大值
}
}
输入三位数,倒着输出
import java.util.Scanner;
public class T1 {
public static void main(String[] args) {
/*System.out.println("请输入三位数:" );
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if(a>99&&a<1000) {
System.out.print((a % 10));
System.out.print((a % 100) / 10);
System.out.print(a / 100);
}else{
System.out.println("您输入的不是三位数");
}*/
System.out.println("请输入三位数:" );
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
String str = String.valueOf(num);
StringBuffer st = new StringBuffer(str);
str = st.reverse().toString();//该方法返回的是一个StringBuffer对象,所以需要toString()方法
int res = Integer.parseInt(str);
System.out.println(res);
}
}
输入时间求下落高度
import java.util.Scanner;
public class Text {
public static void main(String[] args) {
System.out.println("请输入下落的时间t:");//提示用户输入
Scanner sc =new Scanner(System.in);
int t = sc.nextInt();//读入时间
Double h = 0.5*9.8*t*t;//计算高度
System.out.println("下落高度为:"+h);//输出高度
}
}