【JAVA】记小白的JAVA学习之路——基础篇

我的Java学习之路

  • 心路历程说在前:
  • 2020.5.25 Java 第一天
    • 第1章 计算机、程序和Java概述
    • 第2章 基本程序设计
  • 总结
    • 第一章的编程题答案
    • 第二章的编程题答案


心路历程说在前:

  在大一的时候,接触的第一类编程语言是C++,当时的自己对计算机编程几乎不了解,C++的学习并不顺利,特别是指针。之后接触了Java,更喜欢Java这门语言特性和语言规范。但在课程结束后并没有再深入学习Java。
  写这篇博客时,我已经准大四了。在大一以及大二的时候,我都把重心放在了社团,成绩不算差但也不太理想;大三到现在把重心放在了学业,不能说有很大的起色,但比之前好。专心搞学习除了意识到自己的学习态度不行,可能也是一种逃避,大二下学期的时候很迷茫,没有方向,不知道自己的就业方向,无从下手,就觉得不管怎么样先好好学习。
  前段时间是春招,大家都在找实习,实话说觉得当下的自己并没有能耐能找到技术岗的实习,在学校学的东西拿不出手,太浅显也太杂乱。期间觉得基础很重要,去重新学习计算机网络、Linux操作系统、数据结构和算法等基础,效率不高效果也不显著,因为还是没有方向和大致的目标。
  第一次写博客,有点啰嗦,以上就是这段时间的大概的心路历程啦,私下其实有更多过程和反思。总之,最后决定相信自己最开始的对Java的喜欢,重拾Java。虽说是学过,但是水平只能算小白~


  我学习的教材是梁勇老师的《Java语言程序设计(基础篇)》(第10版),现在已经出到第11版。因为教材一些配套网站不能访问曾叨扰梁勇老师,得知英文版已经是12版。



2020.5.25 Java 第一天

  虽然已经有一定的计算机基础,但太久没有接触Java,我还是觉得自己应该仔细学习,因此并没有跳过前面比较概念性的章节。

第1章 计算机、程序和Java概述

  这一章里面主要是主要是介绍了一些关于计算机、编程语言、Java以及一些程序思想等。

第2章 基本程序设计

  主要介绍命名、数据类型、表达式、操作符的一些相关知识,对于我来说也是比较基础,比较轻松的部分。

总结

  重新开始学习Java,当时的想法是:地毯式学习,所有的复习题我都思考一遍,本章小结看一遍回顾,编程练习题每一题都做一遍;为了锻炼自己打代码的能力和速度,甚至把章节内的程序都运行一遍。
  结果就是效率实在低,尽管这两章的内容简单,我在第一天也只完成了第一章和第二章的学习,也让我反思了我的学习方法,因为在之后的章节里内容必定更难理解一些,习题也相对更多一些难一些。所以在做第二章的题目时只抽取了星号部分题目完成。


编程方面:一定要养成良好的编程习惯,命名大小写、学会注释、少用中文,不会的单词多查查翻译,第一天的时候还有用中文,在后来的编程中开始用全英文了。

第一章的编程题答案

  自己完成的代码,非正确答案,供参考,欢迎讨论。

public class ONE_ShowThreeMessage {
 public static void main(String[] args) {
  System.out.println("Welcome to Java!\n"+
                        "Welcome to Computer Science!\n"+
                         "Programming is fun!");
 }
}

public class TWO_ShowFivetimes {
 public static void main(String[] args) {
  System.out.println("Welcome to Java!\n"
    + "Welcome to Java!\n"
    + "Welcome to Java!\n"
    + "Welcome to Java!\n"
    + "Welcome to Java!\n");
 }
}

public class Three_ShowPatten {
 public static void main(String[] args) {
  String row1,row2,row3,row4;
  row1 ="    J     A    V     V    A";
  row2 ="    J    A A    V   V    A A";
  row3 ="J   J   AAAAA    V V    AAAAA";
  row4 =" J J   A     A    V    A     A";
  System.out.println(row1);
  System.out.println(row2);
  System.out.println(row3);
  System.out.println(row4);
 }
}

public class Four_PrintForm {
 public static void main(String[] args) {
  System.out.println("a    a^e  a^3");
  System.out.println("1    1    1");
  System.out.println("2    4    8");
  System.out.println("3    9    27");
  System.out.println("4    16   64");
 }
}

public class Five_Compute {
 public static void main(String[] args) {
  System.out.println((9.5*4.5-2.5*3)/(45.5-3.5)); 
 }
}

public class Six_SumSeries {
 public static void main(String[] args) {
  int d =1; //数列的公差为1
  int sum =0; //数列和初始化为0
  int series =0; //数列中的数初始化
  for(int i=0;i<9;i++) {
   System.out.print("a"+i+"=");
   series =i + d; //数列中的a0,···,a8
   System.out.println(series);
   System.out.print("sum="+sum+"+"+series+"=");
   sum =sum + series;
   System.out.println(sum);
  }
  System.out.println("1+2+3+4+5+6+7+8+9="+sum);
 }
}

public class Seven_ComputeP { 
 public static void main(String[] args) {
  double sum = 0, n = 1.0,d = 2;
  for(int i = 0;i < 6;i++) {
   System.out.println(n);
   sum =sum+Math.pow(-1, i)/n ;
   n = n + d;
  }
  System.out.println(4*sum);
 }
}

public class Eight_Circle {
 public static void main(String[] args) {
  double perimeter,area,r=5.5,pai=3.14;
  perimeter=2*r*pai;
  area=r*r*pai;
  System.out.println("半径为5.5的圆的周长是:"+perimeter+" 面积是:"+area);
 }
}

public class Nine_Rectangle {
 public static void main(String[] args) {
  double weight=4.5,high=7.9;
  double perimeter,area;
  perimeter=(weight+high)*2;
  area=weight*high;
  System.out.println("宽为4.5,高为7.9的矩形的周长是:"+perimeter+" 面积是:"+area);
 }
}

public class Ten_AVEv {
 public static void main(String[] args) {
 double runtime=45.0/60+30.0/3600;
 double runkm=14;
 double mile=runkm/1.6;
 double avev=mile/runtime;
 System.out.println("平均速度为:"+avev);
 }
}

public class Eleven_PopulationEstimate {
 public static void main(String[] args) {
  double population=312_032_486.0;
  double birth=7.0;
  double death=13.0;
  double immigrate=45.0;
  double second=1*60*60*24*365*5;
  birth=second/birth;
  death=second/death;
  immigrate=second/immigrate;
  population=population+birth-death+immigrate;
  System.out.println((int)population);
 }
}

public class Twelve_Avev {
 public static void main(String[] args) {
  int mile=24;
  double time=1+40.0/60+35.0/3600;
  double km=mile*1.6;
  double v=km/time;
  System.out.println(v);
 }
}

public class Thirteen_Cramer {
 public static void main(String[] args) {
  double a=3.4,b=50.2,e=44.5;
  double c=2.1,d=0.55,f=5.9;
  double x=(e*d-b*f)/(a*d-b*c);
  double y=(a*f-e*c)/(a*d-b*c);
  System.out.println("解得x="+(float)x+",y="+(float)y);
 }
}

第二章的编程题答案

  自己完成的代码,非正确答案,供参考,欢迎讨论。

public class Three_ChangeFootToMeter {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  System.out.print("Enter a value for feet:");
  double feet = input.nextDouble();
  System.out.println(feet + " feet is " + Change(feet) + " meters");
 }
 public static double Change(double num) {
  double meter = num * 0.305;
  return meter;
 }
}

public class Six_ComputeSumOfSingleDigits {
 public static void main(String[] args) {
 Scanner input = new Scanner(System.in);
 System.out.print("Enter a number between 0 and 1000: ");
 int number = input.nextInt();
 int hundred = number / 100 ;
 int decade = (number - hundred * 100) / 10;
 int single = (number - hundred * 100 - decade * 10);
 int sum = hundred + decade + single;
 System.out.println("The sum of the digits is: "+sum);
 }
}

public class Thirteen_CompoundInterestValue {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  System.out.print("Enter the monthly saving amount:");
  double amount = input.nextDouble();
  final double YEAR_RATE = 0.05;
  double month_rate = YEAR_RATE / 12;
  for(int i = 0; i < 6; i++) {
   amount = (1 + month_rate) * amount;
   System.out.println("The account value of "+ (i + 1) + " month is " + amount);
  }
 }
}

public class TwentyThree_DrivingExpenses {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  System.out.print("Enter the driving distance:");
  double distance = input.nextDouble();
  System.out.print("Enter miles per gallon:");
  double miles = input.nextDouble();
  System.out.print("Enter price per gallon:");
  double price = input.nextDouble();
  double expenses = distance / miles * price;
  System.out.printf("The cost of driving is $%5.2f" ,expenses); 
 }
}

你可能感兴趣的:(JAVA)