2019暑假Java学习笔记(二)
0709,0710
本篇笔记内容较少较简单,多数语法与C语言相同
基础语法(下)
条件语句、循环语句以及跳转语句、数组的相关操作以及用户输入的操作。
流程控制
常见的:条件语句、循环语句、跳转语句。
if语句
1.语法(与C语言基本相同)
2.注意:条件语句都是利用条件表达式的真或假来决定执行路径,Java里不允许将一个数字作为布尔值使用,虽然这在C和C++里是允许的。
switch语句
1.语法(与C语言基本相同)
switch(表达式){
case 值1:
代码块1
break;
case 值2:
代码块2
break;
default:
默认执行的代码块
}
while语句和do-while语句
1.语法(与C语言基本相同)
do{
代码块
}while(条件);
for语句
1.语法(与C语言基本相同)
break关键字
1.语法(与C语言基本相同)
continue关键字
1.语法(与C语言基本相同)
数组
一维数组
1.声明数组的语法
数据类型[] 数组名;
或者
数据类型 数组名[];
(这种跟C语言基本一样)
数组名为合法的变量名
2.为数组分配空间的语法
数组名 = new 数据类型 [数组长度];
也可以将1和2合并,在声明的同时分配空间。
3.将一个数组赋值给另一个数组
int [] a1 = {1,2,3};
int [] a2;
a2 = a1;
这里只是复制了一个引用,即a2和a1是相同数组的不同名称
4.使用foreach遍历数组
for语句在数组内可以使用特殊简化版本
for(元素类型 元素变量:遍历对象){
执行的代码
}
举例:
public class JudgePrime{
public static void main(String[] args){
int [] ages = {12,18,9,33,45,60};
int i = 1;
for(int age:ages){
System.out.println("数组中第"+i+"个元素是"+age);
i++;
}
}
}
二维数组
1.声明和分配空间的语法
数据类型 [][] 数组名 = new 数据类型[行的个数][列的个数];
或者
数据类型 [][] 数组名;
数组名 = new 数据类型[行的个数][列的个数];
也可以
数据类型 [][] 数组名 = {
{第一行值1,第一行值2,...},
{第二行值1,第二行值2,...},
...
{第n行值1,第n行值2,...}
};
注意除了最后一行外,每行右大括号后都跟一个逗号
用户输入操作
上一篇已经涉及到了。
1.在开头写上:
import java.util.Scanner;
即可以使用java.util包下的Scanner类来获取用户的输入
2.下面是输入多种数据以及控制多组数据输入的方法:
Scanner in = new Scanner(System.in);
//获取用户输入的一行数据 返回为字符串
String s = in.nextLine();
//返回用户输入的int值
int i = in.nextInt();
//循环读取int数据,当输入exit时退出循环
while(!in.hasNext("exit")){
System.out.println(in.nextInt());
}
//关闭输入
in.close();
3.如何输入含空格的一句话
使用Scanner.useDelimiter()方法,可以将分隔符修改为回车或其他符号
Scanner scan = new Scnner(System.in).useDelimiter("\n");
System.out.print("请输入:");
String s = scan.next();
System.out.printf("%s",s);
练习题:用户输入
1.要求:
- 获取用户的输入信息(字符串)
- 当用户输入end时,结束输入并打印用户之前输入的所有信息(输入的信息不超过100个)
2.我的代码:
import java.util.Scanner;
public class InputTest{
public static void main(String[] args){
String [] sen=new String[100];
int i = 0;
Scanner in = new Scanner(System.in);
while(!in.hasNext("end")){
sen[i]=in.nextLine();
i++;
}
in.close();
for(int j=0;j<i;j++){
System.out.println(sen[j]);
}
}
}
参考
感想
学习了Java的一些基础语法,感觉是大部分语法与C语言相同,还有一些与Python相同,如格式化输出的方式,import的用法,数组直接赋值等等。
to be continued
总有一天,我会用高亮的代码段让这里焕然一新!这是我的宣言!
2019暑假Java学习笔记(二)的更多相关文章
- 2019暑假Java学习笔记(一)
目录 基础语法(上) HelloWorld 变量 常量 数据类型 整数 浮点数 char类型 boolean类型 String 计算字符串长度 字符串比较 字符串连接 charAt()方法 字符串常用 ...
- 2019暑假Java学习笔记(三)
目录 面向对象 对象 构造方法 引用与对象实例 static final 封装 this 继承 super 方法重载与重写 多态 抽象类 接口 内部类 成员内部类 静态内部类 局部内部类 匿名内部类 ...
- Java学习笔记二十九:一个Java面向对象的小练习
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...
- 数组排序、递归——(Java学习笔记二)
升序: 选择排序: 选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置 先出现最小值,最后出现最大值. public stat ...
- Java学习笔记二:数据类型II
GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一 Java中的数据类型 Java ...
- Java学习笔记二十八:Java中的接口
Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...
- Java学习笔记二十七:Java中的抽象类
Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...
- Java学习笔记二十五:Java面向对象的三大特性之多态
Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
- Java学习笔记二十四:Java中的Object类
Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...
随机推荐
- 【转载】C#中float.TryParse方法和float.Parse方法的异同之处
在C#编程过程中,float.TryParse方法和float.Parse方法都可以将字符串string转换为单精度浮点类型float,但两者还是有区别,最重要的区别在于float.TryParse方 ...
- 设置vue-quill-editor禁止输入或编辑
<quill-editor class="ql-editor" v-model="form.content" ref="myQuillEdito ...
- 使用 audioqueue 播放PCM数据
// // MainViewController.h // RawAudioDataPlayer // // Created by SamYou on 12-8-18. // Copyright (c ...
- HDU1213通畅工程-并查集求解
并查集的经典题目. 并查集.经典题目是HDU1232通畅工程. 题目描述: 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标 ...
- mongodb replica-set
mongodb 主从复制 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系 ...
- vsftp网络服务
1. vsftp概述 FTP是File Transfer Protocol(文本传输协议)的简称,用于Internet上的文件的双向传输.使用FTP传输时,具有一定程度的危险性,因为数据在因特网上面是 ...
- Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.删除"/sbin/ini ...
- MySQL/MariaDB数据库的触发器
MySQL/MariaDB数据库的触发器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.触发器概述 1>.什么是触发器 触发器的执行不是由程序调用,也不是由手工启动,而是 ...
- Java中线程池,你真的会用吗?ExecutorService ThreadPoolExcutor
原文:https://www.hollischuang.com/archives/2888 在<深入源码分析Java线程池的实现原理>这篇文章中,我们介绍过了Java中线程池的常见用法以及 ...
- SQL中and和or的区别是?
今天有这样得一个需求,如果登陆人是客服的话,会查询订单是’该客服’以及还没有匹配客服的,刚开始想的是直接在sql语句上拼写 or assigned_id is null 的,测试了一下发现这样的 ...