java发展
[图片上传失败...(image-7d74fc-1587919179483)]
环境变量
- JAVA_HOME 添加的
- PATH 指定添加的
- CLASSPATH 新建的,对应lib目录
[图片上传失败...(image-91ea8a-1587919179484)]
多平台
[图片上传失败...(image-823ee4-1587919179484)]
领域多
[图片上传失败...(image-3b4308-1587919179484)]
如何学习
- 根据语法规则写代码
- 学练结合,多写代码
- 勤思考,不懂要问
- 学会自己解决问题
目录结构
[图片上传失败...(image-5abdd5-1587919179484)]
常用关键字
[图片上传失败...(image-3627c2-1587919179484)]
识别符号
A:标识符不能是数字开头
C:标识符组成为字母、数字、下划线_、美元符号$,不包含%
D:标识符中间不能有空格
打印hello。。。
public class HelloImooc{
public static void main(String[] args){
System.out.println("你好世界你好慕课");
System.out.println(3.14);
System.out.println(10); //数值10
System.out.println("10"); //字符串10
}
}
基本数据类型
基本数据类型是CPU可以直接进行运算的类型。Java定义了以下几种基本数据类型:
[图片上传失败...(image-d2db99-1587919179484)]
- 整数类型:byte,short,int,long
- 浮点数类型:float,double
- 字符类型:char
- 布尔类型:boolean
[图片上传失败...(image-4febab-1587919179484)]
byte:-128 ~ 127
short: -32768 ~ 32767
int: -2147483648 ~ 2147483647
long: -9223372036854775808 ~ 9223372036854775807
float类型可最大表示3.4x1038,而double类型可最大表示1.79x10308
其余详情见廖雪峰教程
public class HelloWorld{
public static void main(String[] args) {
String name="爱慕课";
char sex='男';
int num=18;
double price=120.5;
boolean isOK=true;
System.out.println(name);
System.out.println(sex);
System.out.println(num);
System.out.println(price);
System.out.println(isOK);
}
}
常量、变量
public class HelloImooc{
public static void main(String[] args){
int i = 10;
System.out.println(i);
i = 20;
System.out.println(i);
常量:定义变量的时候,如果加上final
修饰符,这个变量就变成了常量
运算符
- 算数运算符
- 赋值运算符
- 比较运算符(关系)
- 逻辑运算符
[图片上传失败...(image-18355b-1587919179484)] - 位运算符
- 三目运算符
键盘录入
[图片上传失败...(image-270b38-1587919179484)]
import java.util.Scanner;
public class ScannerDemo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//输出提示信息
System.out.println("'请输入信息int'");
//从键盘输入一个整型数据,并放到整型变量n中
int n = sc.nextInt();
//将整型数据输出
System.out.println(n);
//输出提示信息
System.out.println("'请输入信息Double'");
//从键盘输入一个浮点型数据,并放到double类型变量d中
double dou = sc.nextDouble();
//将double类型数据输出
System.out.println(dou);
}
}
if 条件判断
import java.util.Scanner;
public class ScoreDemo{
public static void main(String[] args){
Scanner scanner =new Scanner(System.in);
//输出提示信息
System.out.println("请输入您的身高(cm)");
double height = scanner.nextDouble();
height=height/100;
System.out.println("请输入您的体重斤)");
double weight = scanner.nextDouble();
weight= weight/2;
// 计算体质指数
// BMI=体重 ➗ 身高²
double bmi = weight/(height*height);
// 匹配bmi健康范围
if(bmi<18.5){
System.out.println("您的身体健康指数为:"+bmi+"您有点偏瘦了,需要多吃饭");
}else if(bmi>=18.5 && bmi<24){
System.out.println("您的身体健康指数为:"+bmi+"您健康状况良好");
}else if(bmi>=24 && bmi<28){
System.out.println("您的身体健康指数为:"+bmi+"您有些偏胖了,需要减肥呢!");
}else{
System.out.println("您的身体健康指数为:"+bmi+"您的身体状况报表,亟待拯救!");
}
}
}
while 循环
import java.util.Scanner;
public class Demo{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
//输出提示信息
System.out.println("输入一个整数");
//从键盘输入一个整型数据存储到变量n中
int n = sc.nextInt();
//输出提示信息
System.out.println("循环输出1"+n+"的整数");
//编写初始化语句,定义一个整型变量i,值为1
int i = 1;
//使用循环输出1到n的值
while(i<=n){
System.out.println(i);
i++;
}
}
}
随机数
[图片上传失败...(image-5be300-1587919179484)]
随机数
import java.util.Scanner;
public class MenuPrint{
public static void main(String[] args){
//使用输出语句输出菜单
double d= Math.random();
System.out.println(d); //[0,1)
double dou= (int)(Math.random()*10)+1;
System.out.println(dou); //[1,10]
数组
[图片上传失败...(image-f8596b-1587919179484)]
数组需要初始化
- 动态初始化
- 静态初始化
public class Demo {
public static void main(String[] args) {
//创建一个长度为5的字符型一维数组a
char[] a = new char[5];
//为数组c的第3个元素赋值为'C'
a[2]='C';
//输出第3个元素的值
System.out.println(a[2]);
//用静态初始化方式创建一个整型数组b,值为1,2,3,4
char[] b={'1','2','3','4'};
//输出数组b的长度
System.out.println(b.length);
//输出数组b的第2个元素
System.out.println(b[2]);
}
}
评分系统练习
package Char_type;
import java.util.Scanner;
public class HelloImooc {
public static void main(String[] args) {
评分系统
// 1.使用数组存储正确的答案
char[] answer={'A','B','C','D'};
// 2.存储我们录入的答案
char[] youAn = new char[answer.length];
Scanner sc = new Scanner(System.in);
int number=0;
for (int i = 0;i< answer.length;i++) {
// 3.创建键盘录入
System.out.println("请输入您的答案...第"+(i+1)+"题");
// A --"A"
// A -- 'A'
// tochararry A--->char{'A'}
char chars = sc.next().toCharArray()[0];
// 4.存储我们键盘录入答案
youAn[i] = chars;
if (youAn[i] == answer[i]){
number++;
}
}
System.out.println("答对个数:"+number+"; 得分是:"+number*2);
}
}
5人成绩练习
package class_five_scores;
import java.util.Scanner;
public class Averagescore {
public static void main(String[] args) {
// 评分系统
Scanner sc = new Scanner(System.in);
// 1.定义一个长度为5的double类型的数组score,用于存储成绩
double[] scores=new double[5];
// 2.定义整型变量n,用于统计个数,值为1
int n=0;
// 3.定义整型变量num,用于统计大于90分的成绩,值为0
int num =0;
// 4、定义double类型变量sum,用于统计成绩的和,值为0.0
double sum = 0.0;
// 5、使用for循环,从键盘接收数据为数组元素赋值,并进行成绩和大于90分的人数的统计。
for(int i = 0;i< scores.length;i++){
System.out.println("请输入第"+(i+1)+"题的成绩");
double cool= sc.nextDouble();
scores[i]=cool;
if (cool>90){
num++;
}
sum = sum+cool;
n ++;
}
System.out.println("平均分数;"+sum);
System.out.println("成绩大于90分人数:"+num);
System.out.println("平均分数;"+sum/n);
}
}
自增自减自乘除余
public class HelloWorld{
public static void main(String[] args) {
int one = 10 ;
int two = 20 ;
int three = one+two ;
System.out.println(three);
three += one;
System.out.println(three);
three -= one;
System.out.println(three);
three *= one;
System.out.println(three);
three/=one;
System.out.println(three);
three%=one;
System.out.println(three);
}
}
public class HelloWorld{
public static void main(String[] args) {
int a=16;
double b=9.5;
String str1="hello";
String str2="imooc";
System.out.println("a等于b:" + (a==b));
System.out.println("a大于b:" + (a>b));
System.out.println("a小于等于b:" + (a<=b));
System.out.println("str1等于str2:" + (str1==str2));
}
}
逻辑语句
public class HelloWorld {
public static void main(String[] args) {
boolean a = true; // a同意
boolean b = false; // b反对
boolean c = false; // c反对
boolean d = true; // d同意
System.out.println((a && b)+"未通过");
System.out.println((a || b)+"通过");
System.out.println((!a)+"未通过");
System.out.println((c ^ d)+"通过");
}
}
条件运算符
public class HelloWorld{
public static void main(String[] args) {
int score=68;
String mark =(score >= 60)? "及格" : "不及格";
System.out.println("考试成绩如何:"+mark);
}
}
case 的用法
public class HelloWorld {
public static void main(String[] args) {
char today='日';
switch(today){
case '一':
case '三':
case '五':
System.out.println("吃包子");
break;
case '二':
case '四':
case '六':
System.out.println("吃油条");
break;
case '日':
System.out.println("吃主席套餐");
break;
}
}
}
do while语句
public class HelloWorld {
public static void main(String[] args) {
int sum = 0; // 保存 1-50 之间偶数的和
int num = 2; // 代表 1-50 之间的偶数
do {
//实现累加求和
sum += num;
num = num + 2; // 每执行一次将数值加2,以进行下次循环条件判断
} while (num<=50); // 满足数值在 1-50 之间时重复执行循环
System.out.println(" 50以内的偶数之和为:" + sum );
}
}
continue用法
public class HelloWorld {
public static void main(String[] args) {
int sum = 0; // 保存累加值
for (int i = 1; i <= 10; i++) {
// 如果i为奇数,结束本次循环,进行下一次循环
if ( i%2!=0 ) {
continue;
}
sum = sum + i;
}
System.out.print("1到10之间的所有偶数的和为:" + sum);
}
}
2层循环打印三角形
public class HelloWorld {
public static void main(String[] args) {
System.out.println("打印直角三角形");
// 外层循环控制行数
for (int i = 1; i<=3; i+=1 ) {
// 内层循环控制每行的*号数
// 内层循环变量的最大值和外层循环变量的值相等
for (int j = 1; j<=i;j+=1 ) {
System.out.print("*");
}
// 每打印完一行后进行换行
System.out.println();
}
}
}
列表最大、最小、均值
public class HelloWorld {
public static void main(String[] args) {
// 定义一个整型数组,并赋初值
int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 };
int max = nums[0]; // 假定最大值为数组中的第一个元素
int min = nums[0]; // 假定最小值为数组中的第一个元素
double sum = 0;// 累加值
double avg = 0;// 平均值
for (int i = 0; i < nums.length; i++) { // 循环遍历数组中的元素
// 如果当前值大于max,则替换max的值
if(nums[i]>max){
max=nums[i];
}
// 如果当前值小于min,则替换min的值
else if (nums[i]
排序 + for-each案例
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
// 定义一个整型数组,保存成绩信息
int[] scores = { 89, 72, 64, 58, 93 };
// 对Arrays类对数组进行排序
Arrays.sort(scores);
// 使用foreach遍历输出数组中的元素
for ( int score : scores ) {
System.out.println(score);
}
}
}
定义两行三列数组,并分别打印
public class HelloWorld {
public static void main(String[] args) {
// 定义两行三列的二维数组并赋值
String[][] names={{"tom","jack","mike"},{"zhangsan","lisi","wangwu"}};
// 通过二重循环输出二维数组中元素的值
for (int i = 0; i < names.length ; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println( names[i][j] );
}
System.out.println();
}
}
}