Java笔记02:
自学笔记1
内容:
- java概念(变量、数据类型、键盘录入、运算符)
- C primer plus(第六版)中文版》第二三章编程练习
- 编程时遇到的问题及解决方法
1.java概念
总的来说,这张图把菜鸟教程和黑马程序员讲的知识点都写了,字太多了,大概率不会看第二遍,你们看着整理吧
实在好奇就体验了一下各类输入的区别,这是正经输入版本
这是随心版本,这两种对比来看,我没找错资料
2.题目
2.1 编写一个程序,创建一个整型变量toes,并将toes设置为10。程序中还要计算toes的两倍和toes的平方。该程序应打印3个值,并分别描述以示区分。(题目来源《C primer plus(第六版)中文版》编程练习P37)
1.整型变量toes且值为10
2.要计算变量,求变量的2倍和平方
3.输出的时候有3个值,每个都有描述,描述内容可以diy
public class SecondCode{
public static void main(String[] args){
int toes=10;
int toes2,doubletoes;
toes2=toes*2;
doubletoes=toes*toes;
System.out.println("toes="+toes);
System.out.println("toes*2="+toes2);
System.out.println("toes^2="+doubletoes);
}
}
2.2 编写一个程序,把你的年龄转换成天数,并显示这两个值。这里不用考虑闰年的问题。(题目来源《C primer plus(第六版)中文版》编程练习P37)
1.需要定义两个变量,一个是年龄,另一个是天数
2.为了多熟悉Java键盘输入,我会将年龄需求扩展为用户输入的年龄
3.不考虑闰年问题,那默认一年365天,所以活着的天数=年龄变量*365
import java.util.Scanner;
public class ThirdCode{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("Enter your lived years:");
int years=sc.nextInt();
int day;
day=years*365;
System.out.println("your lived years is " +years+'\n'+"your lived days is "+day);
}
}
2.3 一年大约有3.156×10^7秒。编写一个程序,提示用户输入年龄,然后显示该年龄对应的秒数。(题目来源《C primer plus(第六版)中文版》编程练习P69)
这题跟上题想法差不多,话不多说
import java.util.Scanner;
public class FourthCode{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("enter your year:");
int years = sc.nextInt();
double second=years*(3.156*10e7);
System.out.println(years+'='+second+"second");
}
}
2.4 一个水分子的质量约为3.0×10^−23克。1夸脱水大约是950克。编写一个程序,提示用户输入水的夸脱数,并显示水分子的数量。(题目来源《C primer plus(第六版)中文版》编程练习P69)
1.需要有2个变量,一个是用户输入的夸脱数,另一个就是计算后水分子的数量
2.题目没规定变量类型,用默认浮点double来定义
3.水分子计算公式=夸脱数*950/一个水分子质量
import java.util.Scanner;
public class FifthCode{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("how many water of quart:");
double quart=sc.nextDouble();
double numbers;
numbers=quart*950/(3.0*10e-23);
System.out.println(quart+" quart "+'='+ numbers +" member ");
}
}
2.5 1英寸相当于2.54厘米。编写一个程序,提示用户输入身高(/英寸),然后以厘米为单位显示身高。(题目来源《C primer plus(第六版)中文版》编程练习P69)
1.有2个变量,一个是用户输入的身高(英寸),一个是需要计算的身高(厘米)
2.因为1英寸相当于2.54厘米,所以需要定义为浮点型,那索性都是double
3.公式=用户输入*2.54
import java.util.Scanner;
public class SixthCode{
public static void main(String[] args){
System.out.println("enter your 身高(英寸):");
Scanner sc=new Scanner(System.in);
double yc=sc.nextDouble();//英寸
double cm=yc*2.54;
System.out.println(yc+" 英寸 = "+cm+" 厘米");
}
}
2.6 在美国的体积测量系统中,1品脱等于2杯,1杯等于8盎司,1盎司等于2大汤勺,1大汤勺等于3茶勺。编写一个程序,提示用户输入杯数,并以品脱、盎司、汤勺、茶勺为单位显示等价容量。(题目来源《C primer plus(第六版)中文版》编程练习P69)
1.变量多了呢,需要4个变量
2.题目指定用户输入杯数,所以考虑到1杯=1/2品脱,变量类型定义为浮点型
3.公式(n杯)=n/2品脱=8n盎司=28n汤勺=328n茶勺
import java.util.Scanner;
public class SeventhCode{
public static void main(String[] args){
System.out.println("请输入杯数:");
Scanner sc=new Scanner(System.in);
double bs=sc.nextDouble();//杯数
double pt,ys,ts,cs;
pt=bs/2;
ys=bs*8;
ts=bs*8*2;
cs=bs*8*2*3;
System.out.println(bs+" 杯 = "+pt+" 品脱 ="+ys+" 盎司 ="+ts+" 大汤勺 ="+ cs+" 茶勺");
}
}
经过这几题练习,我觉得我可以进行下一阶段的学习了。题目的话,我顺手拿了一本C,或许下次可以试试找个网站刷题
3.遇到的问题
问题1:单引号输习惯了,后面的没想太多,直接就打进去了,导致报错
解决方法:second
是个字符串,应该用双引号
问题2.Notepad给了个联想功能,输入一次之后,第二次就会提示,我没多看就打回车了,也许我需要单纯的记事本
解决方法:只需要把year
改成years
变量即可
问题3.看到不可映射字符的那一刻我是迷茫的,不过看到报错的位置都是在输入中文之后,就想到了之前的菜鸟教程理论基础,再加上我上关的乱码冲击,抱着试试看的想法,重新编译,成功
解决方法:重新用UTF-8编译
-----用了记事本,不仅没有高亮显示关键字,还没有换行自动填充空格效果,手动打空格好累-_-