学号 20175201张驰 《Java程序设计》第7周学习总结

学号 20175201张驰 《Java程序设计》第7周学习总结

教材学习内容总结

第八章

String类能有效地处理字符序列信息,它的常用方法有:

  1. public int length()可以统计一个String对象的字符序列的长度
    2.public String substrings(int startpoint)可以获得一个新的String对象,新的String对象的字符序列是复制当前String对象的字符序列中的startpoint位置至最后位置上的字符所得到的字符序列
    3.public String trim()可以得到一个新的String对象,而新的String对象的字符序列是当前String对象的字符序列去掉前后空格的字符序列
    4.StringTokenizer类不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。既可以在创建时指定,同样也可以根据每个标记来指定分隔符
    5.StringBuffer类和String类:String的值是不能改变的,值只要改变就会变成新的对象,然而StringBuffer可以很方便的增删查改字符串的内容而不会改变对象!

第十一章

连接数据库:Connection getConnection(java.lang.String, java.lang.String, java.lang.String) ,Connection getConnection(java.lang.String)

条件与排序查询: where 子语句
排序
order by 子语句对记录进行排序
order by <字段名>
更新 update 表 set 字段 = 新值 where<条件子句>
添加 insert into 表(字段列表)value (对应的具体的记录)
删除 delete from 表名 where <条件子句>
事务:事务是由SQL语句组成的,事务处理是指:应用程序保证事务中的SQL语句要么全部都执行,要么一个都不执行
JDBC事务处理步骤:
1.用setAutoCommit(booean b)方法关闭自动提交模式
2.用commit()方法处理事务
3.用rollback()方法处理事务失败

教材学习中的问题和解决过程

课后练习

第八章课后编程题
1.public class E {

public static void main (String args[ ]) {

 String s1,s2,t1="ABCDabcd";

 s1=t1.toUpperCase();

 s2=t1.toLowerCase();

 System.out.println(s1);

 System.out.println(s2);

 String s3=s1.concat(s2);

  System.out.println(s3);

}

}

  1. public class E {

public static void main (String args[ ]) {

 String s="ABCDabcd";

 char cStart=s.charAt(0);

 char cEnd = s.charAt(s.length()-1);

 System.out.println(cStart);

 System.out.println(cEnd);

}

}

  1. import java.util.*;

public class E {

public static void main (String args[ ]) {

int year1,month1,day1,year2,month2,day2;

  try{ year1=Integer.parseInt(args[0]);

       month1=Integer.parseInt(args[1]);

       day1=Integer.parseInt(args[2]);

       year2=Integer.parseInt(args[3]);

       month2=Integer.parseInt(args[4]);

       day2=Integer.parseInt(args[5]);

   }

   catch(NumberFormatException e)

     { year1=2012;

       month1=0;

       day1=1;

       year2=2018;

       month2=0;

       day2=1;

   }

   Calendar calendar=Calendar.getInstance();

   calendar.set(year1,month1-1,day1); 

   long timeYear1=calendar.getTimeInMillis();

   calendar.set(year2,month2-1,day2); 

   long timeYear2=calendar.getTimeInMillis();

   long 相隔天数=Math.abs((timeYear1-timeYear2)/(1000*60*60*24));

   System.out.println(""+year1+"年"+month1+"月"+day1+"日和"+

                        year2+"年"+month2+"月"+day2+"日相隔"+相隔天数+"天");

}

}

  1. import java.util.*;

public class E {

public static void main (String args[ ]) {

double a=0,b=0,c=0;

  a=12;

  b=24;

  c=Math.asin(0.56);

  System.out.println(c);

  c=Math.cos(3.14);

  System.out.println(c);

  c=Math.exp(1);

  System.out.println(c);

  c=Math.log(8);

  System.out.println(c);

}

}

5.public class E {

  public static void main (String args[ ]) {

    String str = "ab123you你是谁?";

    String regex = "\\D+";

    str = str.replaceAll(regex,"");

    System.out.println(str);

  }

}

6. import java.util.*;

public class E {

public static void main(String args[]) {

  String cost = "数学87分,物理76分,英语96分";

  Scanner scanner = new Scanner(cost);

  scanner.useDelimiter("[^0123456789.]+");

  double sum=0;

  int count =0;

  while(scanner.hasNext()){

     try{  double score = scanner.nextDouble();

           count++;

           sum = sum+score;

           System.out.println(score);

     }

     catch(InputMismatchException exp){

          String t = scanner.next();

     }  

  }

  System.out.println("总分:"+sum+"分");

  System.out.println("平均分:"+sum/count+"分");

}

}

第十一章课后编程题

  1. import java.sql.*;

import java.util.*;

public class E {

public static void main(String args[]) {

 Query query=new Query();

 String dataSource="myData";

 String tableName="goods";

 Scanner read=new Scanner(System.in);

 System.out.print("输入数据源名:");

 dataSource = read.nextLine();

 System.out.print("输入表名:");

 tableName = read.nextLine();

 query.setDatasourceName(dataSource);

 query.setTableName(tableName);

 query.setSQL("SELECT * FROM "+tableName);

 query.inputQueryResult();

}

}

class Query {

String datasourceName=""; //数据源名

String tableName=""; //表名

String SQL; //SQL语句

public Query() {

  try{  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  }

  catch(ClassNotFoundException e) {

     System.out.print(e);

  }

}

public void setDatasourceName(String s) {

  datasourceName = s.trim();

}

public void setTableName(String s) {

  tableName = s.trim();

}

public void setSQL(String SQL) {

  this.SQL = SQL.trim();

}

public void inputQueryResult() {

  Connection con;

  Statement sql;

  ResultSet rs;

  try {

       String uri = "jdbc:odbc:"+datasourceName;

       String id = "";

       String password = "";

       con = DriverManager.getConnection(uri,id,password);

       DatabaseMetaData metadata = con.getMetaData();

       ResultSet rs1 = metadata.getColumns(null,null,tableName,null);

       int 字段个数 = 0;

       while(rs1.next()) {

          字段个数++;

       }

       sql = con.createStatement();

       rs = sql.executeQuery(SQL);

       while(rs.next()) {

         for(int k=1;k<=字段个数;k++) {

             System.out.print(" "+rs.getString(k)+" ");

         }

         System.out.println("");

       }

       con.close();

   }

   catch(SQLException e) {

       System.out.println("请输入正确的表名"+e);

   }

}

}

  1. import java.sql.*;

import java.util.*;

public class E {

public static void main(String args[]) {

 Query query = new Query();

 String dataSource = "myData";

 String tableName = "goods";

 query.setDatasourceName(dataSource);

 query.setTableName(tableName);

 String name = "";

 Scanner read=new Scanner(System.in);

 System.out.print("商品名:");

 name = read.nextLine();

 String str="'%["+name+"]%'";

 String SQL = "SELECT * FROM "+tableName+" WHERE name LIKE "+str;

 query.setSQL(SQL);

 System.out.println(tableName+"表中商品名是"+name+"的记录");

 query.inputQueryResult();

}

}

class Query {

String datasourceName=""; //数据源名

String tableName=""; //表名

String SQL; //SQL语句

public Query() {

  try{  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  }

  catch(ClassNotFoundException e) {

     System.out.print(e);

  }

}

public void setDatasourceName(String s) {

  datasourceName = s.trim();

}

public void setTableName(String s) {

  tableName = s.trim();

}

public void setSQL(String SQL) {

  this.SQL = SQL.trim();

}

public void inputQueryResult() {

  Connection con;

  Statement sql;

  ResultSet rs;

  try {

       String uri = "jdbc:odbc:"+datasourceName;

       String id = "";

       String password = "";

       con = DriverManager.getConnection(uri,id,password);

       DatabaseMetaData metadata = con.getMetaData();

       ResultSet rs1 = metadata.getColumns(null,null,tableName,null);

       int 字段个数 = 0;

       while(rs1.next()) {

          字段个数++;

       }

       sql = con.createStatement();

       rs = sql.executeQuery(SQL);

       while(rs.next()) {

         for(int k=1;k<=字段个数;k++) {

             System.out.print(" "+rs.getString(k)+" ");

         }

         System.out.println("");

       }

       con.close();

   }

   catch(SQLException e) {

       System.out.println("请输入正确的表名"+e);

   }

}

}

代码托管

图片.png

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 4000行 30篇 400小时
第五周 5840 8/8 10 linux学习
·
posted @ 2019-04-12 14:02  20175201张驰  阅读(190)  评论(0编辑  收藏  举报