第一周 作业与实践:绪论与Java基本语法
一、线上学习平台
3.讨论
(1)关于Java的学习:
a)通过观看超星平台的视频进行课前预习,能够对知识点有一定的了解,遇到不清楚或不懂的地方,上课提出或仔细听讲;
b)课后记得要及时复习相应重点内容,可以再次选择性的观看超星平台课程上的视频内容。
c)每学完一章节,便通过PTA平台编写代码来提高自己的编码能力,增加对知识点的理解能力。
d)平时练习过程中,遇到相关的专有名词等,可通过百度/博客等查询。
(2) java HelloWorld命令指的是启动JVM载入HelloWorld这个类,从而运行该Java程序。
(3)switch完成等级划分
package text1;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入成绩:");
int score=sc.nextInt();
if (score>100||score<0) {
System.out.println("输入错误,请重新输入");
return;
}
switch (score/10) {
case 10:
case 9:
System.out.println("成绩等级为A,你真棒!");
break;
case 8:
System.out.println("成绩等级为B");
break;
case 7:
System.out.println("成绩等级为C");
break;
case 6:
System.out.println("成绩等级为D");
break;
default:
System.out.println("成绩等级为E,请继续努力哦!");
break;
}
}
}
(4)引用数据类型和基本数据类型的区别是,前者存放引用,后者存放数据内容。
二、PTA编程
三、实验
1.控制台下编译、运行
2.Eclipse使用
(1)新建项目(Project)learnjava
(2)新建类Main,带package
(3)使用Alt+/进行自动完成(sysout, for, while, switch, 已有变量名自动补全)
(4)快捷键:Ctrl+F11,运行。
(5)配置Run Configurations,在Eclipse中实现控制台参数输入
package learnjava;
public class Main {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
(6)观察:通过Eclipse的Package Explorer观察项目的录结构,查看对应的目录结构。
(7)观察:项目的src目录与bin目录。尝试命令行下运行bin目录中的.class文件。
3.PTA入门
1.1 jmu-Java-01入门-第一个PTA上Java程序
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
int a = sc.nextInt();
int b = sc.nextInt();
if(Math.abs(a)>1000) {
System.out.println("|a|>1000");
}
else System.out.println(a+b);
}
sc.close();
}
}
本题总结:
- 对于输入若干对整数a,b,需要使用hasNext()
2.对于是否超过1000可以使用Math.abs()
3.第一次上手Java,还有点不太适应书写的格式等
1.2 jmu-java-01入门-基本输入
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a+b);
}
sc.close();
}
}
本题总结:沿用第一题的代码并修改
1.3 jmu-Java-01入门-取数字
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);//输入
while(sc.hasNext()) {//判断是否还有其他标记需要读取
String a = sc.nextLine();//读取每行的标记
int x = Integer.parseInt(a);//将字符型转化成整型
if(x>=10000 && x<=20000) {
String y = Integer.toBinaryString(x);//将十进制整型转换成二进制字符型
System.out.print(y);//输出二进制数
System.out.printf(",%o",x);//输出八进制
System.out.printf(",%x\n",x);//输出十六进制
}
else {
int sum = 0;//定义和sum
for(int i = 0;i<a.length();i++) {
if(a.charAt(i) == '-') {//返回指定索引处的字符
continue;
}
System.out.print(a.charAt(i)+" ");//依次输出字符的数
String s = new Character(a.charAt(i)).toString();
sum += Integer.parseInt(s);//将每个数相加
}
System.out.println(sum);//输出和sum
}
}
sc.close();
}
}
本题总结:
1.jdk文档中查询Integer,使用Integer.parseInt()可以将字符型转化为整型,使用Integer.toBinaryString()是将十进制整型转化为二进制字符型等;
2.先通过hasNest()读取每行字符串,再判断该数是否>=10000且<=20000;
3.如果没有超过范围,则先使用Integer.parseInt()将该数转化为整型,依次输出二进制、八进制、十六进制,其中八进制输出可用System.out.print("%o",x),同理,十六进制输出可使用System.out.print("%x",x);
4.超过范围则需要把各个数字进行输出并相加,一开始不知道怎么判断是否读取字符串完整,就百度了一下,发现可以使用charAt(),又在jdk找到了它的用法,charAt()=='-'表示未读取完整。
1.4 jmu-Java-01入门-取数字浮点数
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);//输入
while(sc.hasNext()) {//判断是否还有其他标记需要读取
int sum = 0;//和
String x = sc.nextLine();//读取每行数
for(int i = 0;i<x.length();i++) {
if(x.charAt(i)>='0' && x.charAt(i)<='9') {
sum = sum + x.charAt(i)-'0';//将字符强制转换int 并将各个数相加
}
}
System.out.println(sum);//输出和
}
sc.close();
}
}
本题总结:
1.与第三题相似,先通过hasNext()读取每行标记,如果数据中含有0-9以外的字符,先通过charAt()判断,然后使用charAt()-'0'进行强制转换成整型
四、博客园与Markdown
第一次使用Markdown书写,有些操作不太熟悉,比如说插入代码、分点操作等,但是通过百度查阅,已经基本掌握。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)