Java基础
-
程序由类组成,类由方法组成,方法由命令组成!
-
最小程序含有一个类。对于每个类,都创建一个单独的文件。文件的名称与类的名称相匹配。”
-
“在 Java 语言中,每个变量都有三个重要的属性:类型、名称和值
-
“变量也有类型。它只能存储类型与其自身相同的值。”
-
“基本上可以。变量名不能包含空格、加号、减号等。最好在一个变量名中只使用字母和数字。”
-
JAVA语言区分大小写
-
Java 语言无与伦比的优势就是它的平台独立性,一次编译到处运行,跨平台性
-
“如果我们只是创建一个对象而不将其赋给变量,Java 机器将创建该对象,然后将其声明为垃圾(未使用的对象)。不久后,将在垃圾收集期间处理该对象。”
-
“你不需要处理。一旦没有变量引用某个对象,该对象就会被标记为垃圾, Java 机器在下次收集垃圾时会将其销毁。”
-
所有 Java 类都是从 Object 类派生的,Object 类包含 toString() 方法。要将对象转换为字符串时,将调用此方法
-
boolean 变量的默认值为 false。
乘法表
package zh.codegym.task.task03.task0314;
/*
乘法表
*/
public class Solution {
public static void main(String[] args) {
for(int i=1;i<=10;i++){
for(int j = 1;j<=10;j++){
System.out.print(i * j);
System.out.print(" ");
}
System.out.println();
}
}
}
键盘输入
package zh.codegym.task.task03.task0318;
import java.io.*;
/*
计划征服全世界
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String years = reader.readLine();
String name = reader.readLine();
System.out.println(name + "将在 " + years + " 年后征服全世界。哈哈哈哈!");
}
}
输出类型为string
- static(类)变量在程序运行的整个过程中都存在。它们的可见性也可以由访问修饰符定义。
- 只有static方法 才能调用static方法
- static 变量由类的所有对象共享。从技术上讲,它甚至不在这些对象之内,因为它甚至在创建任何 Cat 对象之前既已存在。
命令和代码块
- 方法主体是代码块。
- 只要可以编写一条命令的地方,都可以编写一个代码块
判断 if else
- if判断条件用逻辑运算符 && 与 ||或 !非
- 如果在if判断条件里面做运算加个括号即可,再用逻辑运算符连接
package zh.codegym.task.task04.task0412;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
使用键盘输入一个数字。
如果该数字为正数,则将其加倍。
如果该数字为负数,则将其加一。
如果输入的数字为零,则显示零。
*/
public class Solution {
public static void main(String[] args) throws Exception
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(reader.readLine()); //强转成int类型,因为下面是int类型相比较,把括号里面内容变成double类型的。
if (a > 0){
a = a * 2;
} else if (a < 0) {
a = a + 1;
}
System.out.println(a);
}
}
package zh.codegym.task.task04.task0416;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
行人交通信号灯的编程如下:
在每小时开始时,绿色信号灯点亮三分钟,
接下来黄色信号灯点亮一分钟,
然后红色信号灯点亮一分钟。
接下来绿色信号灯再次点亮三分钟,以此类推。
使用键盘输入一个实际的数字 t,用于表示从小时开始后经过的分钟数。
确定在指定时间什么颜色的交通信号灯处于点亮状态。
按如下所示显示结果:
如果绿灯点亮,则为“绿色”,
如果黄灯点亮,则为“黄色”,
如果红灯点亮,则为“红色”。
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
double t = Double.parseDouble(reader.readLine());//有小数,就用double强转,把括号里面内容变成double类型的。
t = t%5; //把5作为一个总数来算,简单多了
if(t>=0 && t<3){
System.out.println("绿色");
}else if(t>=3 && t<4){
System.out.println("黄色");
}else if(t>=4 && t<5){
System.out.println("红色");
}
}
}
package zh.codegym.task.task04.task0417;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
使用键盘输入三个整数。确定这些数字中是否至少有一对相等的数字。
如果存在这样一对数字,则显示该数字,并用空格分隔。
如果三个数字全部相等,则全部显示。
是否有一对?
*/
public class Solution {
public static void main(String[] args) throws IOException {
int a = Integer.parseInt(reader.readLine());
int b = Integer.parseInt(reader.readLine());
int c = Integer.parseInt(reader.readLine());
if (a == b && a == c) { //把共同的条件放到前面,不然无法执行到下一步
System.out.println(a + " " + b + " " + c);
} else {
if (a == b) {
System.out.println(a + " " + b);
}
if (a == c) {
System.out.println(a + " " + c);
}
if (b == c) {
System.out.println(b + " " + c);
}
}
}
}
if判断
if (a < b)
{
if (a < c)
System.out.println("a 为最小值");
else
System.out.println("c 为最小值");
}
else
{
if (b < c)
System.out.println("b 为最小值");
else
System.out.println("c 为最小值");
}
package zh.codegym.task.task04.task0419;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
使用键盘输入四个数字,然后显示其中的最大值。如果最大值出现多次,则只显示一次。
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(reader.readLine());
int b = Integer.parseInt(reader.readLine());
int c = Integer.parseInt(reader.readLine());
int d = Integer.parseInt(reader.readLine());
int count = a > b ? a:b; //可以分成两组,找出各自最大值 再比较
int count1= c > d ? c:d;
int max = count>count1 ? count:count1;
System.out.println(max);
}
}
package zh.codegym.task.task04.task0420;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
对三个数字进行排序
使用键盘输入三个数字,然后按降序显示它们。
所显示的数字必须用空格分隔。
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(reader.readLine());
int b = Integer.parseInt(reader.readLine());
int c = Integer.parseInt(reader.readLine());
if(a<=b && a<=c){ //双重if判断,通过第一个if条件后,再进行下一个if条件判断
if(b>=c){
System.out.println(b+" "+c+" "+a);
}else{
System.out.println(c+" "+b+" "+a);
}
}else if(b<=c && b<=a){
if(a>=c){
System.out.println(a+" "+c+" "+b);
}else{
System.out.println(c+" "+a+" "+b);
}
}else{
if(a>=b){
System.out.println(a+" "+b+" "+c);
}else{
System.out.println(b+" "+a+" "+c);
}
}
}
}
package zh.codegym.task.task04.task0428;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
正数
使用键盘输入三个整数。显示原始集中正数的个数。
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bis = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(bis.readLine());
int b = Integer.parseInt(bis.readLine());
int c = Integer.parseInt(bis.readLine());
int cont = 0;
if (a > 0) {
cont++;
}
if (b > 0) {
cont++;
}
if (c > 0) {
cont++;
}
System.out.println(cont);
}
}
逻辑运算符
-
“如果我想写 0<a<b,该怎么做?”
“Java 没有带三个操作数的比较运算符。因此,你需要这样做:(0<a) AND (a<b)。”
-
&&与 ||或 !非
循环
while