java海中信真实面试_手写map键值对写入值和取值HashMap字符串转double格式化double保留两位小数字符串转成日期格式css内边距外边距垂直对齐垮单元格
Posted 平凡加班狗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java海中信真实面试_手写map键值对写入值和取值HashMap字符串转double格式化double保留两位小数字符串转成日期格式css内边距外边距垂直对齐垮单元格相关的知识,希望对你有一定的参考价值。
海中信面试题
文章目录
前言
面试了一下,记录一下真实的面试
手写代码:map键值对写入值和取值
最简单是声明和赋值取值
这只是简单的赋值和取值,如果要你遍历呢,是不是又不会了,我面试的时候连声明都忘了,md,手机又给扣了,完全没思路,还是平时用得少,要经常用才不会忘记
遍历
完整代码如下:
package job_interview02;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class g_海中信面试题_map键值对写入值和取值 {
public static void main(String[] args) {
//HashMap
Map<String,String> map=new HashMap<>();
//写入值
map.put("key1", "张三");
map.put("key2", "李四");
map.put("key2", "王五");
map.put("key3", "赵六");
//取出值
System.out.println(map.get("key1"));
//上面是最基础,如果面试官继续深入
//遍历上面所有的hashMap值
System.out.println("遍历 ——> ");
//方法一:普遍使用的方法
System.out.println("方法一:普遍使用的方法");
for (String string : map.keySet()) {
System.out.println("key="+string+" value="+map.get(string));
}
System.out.println("方法二:Iterator 用迭代器的方式");
//方法二:Iterator 用迭代器的方式
Iterator<Map.Entry<String, String>> it=map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<java.lang.String, java.lang.String> entry = (Map.Entry<java.lang.String, java.lang.String>) it
.next();
System.out.println("key="+entry.getKey()+" value="+entry.getValue());
}
System.out.println("方法三:最推荐的一种方式,通过Map.entrySet遍历key和value,尤其的容量大时,效率高");
//方法三:最推荐的一种方式,通过Map.entrySet遍历key和value,尤其的容量大时,效率高
for(Map.Entry<String,String> entry:map.entrySet()){
System.out.println("key="+entry.getKey()+" value="+entry.getValue());
}
System.out.println("方法4:通过Map.values()遍历所有的value,但不能遍历key");
for(String v:map.values()){
System.out.println("values"+v);
}
}
}
字符串转double、格式化double保留两位小数、字符串转成日期格式
字符串转double
代码
package job_interview02;
public class h_海中信面试_字符串转double_格式化double保留两位小数_字符串转成日期格式 {
public static void main(String[] args) {
//字符串转double
//方式1:Double.parseDouble
String str1="36.99";
System.out.println("方式1:Double.parseDouble");
double d=Double.parseDouble(str1);
System.out.println(d);
//方式2:Double.valueOf
System.out.println("------------------------");
System.out.println("方式2:Double.valueOf");
double d2=Double.valueOf(str1);
System.out.println(d2);
//方式3:使用Double类的构造函数字符串转换为双精度double
System.out.println("------------------------");
System.out.println("方式3:使用Double类的构造函数字符串转换为双精度double");
double d3=new Double(str1);
System.out.println(d3);
}
}
格式化double保留两位小数、格式化String类型也可保留2位小数
实际上格式化String类型也可保留2位小数
如下
注意一下Double和double的区别
字符串转成日期格式
衍生 如何将日期转为字符串,离不开 new SimpleDateFormat
转过来,如果转过去:将日期转为字符串
css内边距、外边距、垂直对齐怎么实现
padding:内边距
margin :外边界
1、内边距
padding(内边距也叫内填充)
padding-bottom 长度/百分比 元件下端边线的空隙
padding-left 长度/百分比 元件左端边线的空隙
padding-right 长度/百分比 元件右端边线的空隙
padding-top 长度/百分比 元件上端边线的空隙
简易写法:
padding:10px 一个值表示同时控制四个方向
padding:2px 4px 两个值表示第一个值控制上下 第二个值控制左右
padding:2px 6px 10px 三个值表示第一个值控制上 第二个值控制右和左 第三个值控制下 左边找右边
padding:1px 2px 3px 4px 四个值表示每个值单独控制上右下左
2、外边距
margin(外边界) 属性介绍
margin-bottom auto 自动调整空隙 长度/百分比 设置下端空隙
margin-left auto 自动调整空隙 长度/百分比 设置左端空隙
margin-right auto 自动调整空隙 长度/百分比 设置右端空隙
margin-top auto 自动调整空隙 长度/百分比 设置上端空隙
简化方案:
margin:2px 4px
margin:2px 6px 10px
margin:1px 2px 3px 4px
<style type="text/css">
div{
width:200px;
height:200px;
background-color:#0F0;
margin:100px;
padding:10px;
}
body{
margin:0px;
}
</style>
</head>
<body>
<div>
6、你不能当饭吃,但没有你,我吃不下饭。
7、要有多大的身躯,才能撑起您那龌龊的灵魂啊!
8、做男人的最高境界不是你去泡妞,而是让妞来泡你。
9、有心才会累,无心者无所谓。
</div>
</body>
创建一个列表、第一行是一个单元格A,第二行是两个单元格B、C怎么实现,主要考察垮单元格怎么实现
主要就是 rowspan 和 colspan这个跨单元格的使用,合并单元格
colspan=2的话就是合并两列
rowspan=2就是合并两行
手写一个连接数据库的java代码
这个面试题我非常意外,因为平时我们都用框架或者sqlHelp等用习惯了,这个最基础的反而没有去管它
① com.mysql.jdbc.Driver mysql数据库连接jar包。 获取途径: 链接:https://pan.baidu.com/s/1SFcjuut5BsO-4x3U-SdG6Q 提取码:aafz
② private static final String URL = “jdbc:mysql://localhost:3306/zhaowejie?” + “useUnicode=true&characterEncoding=UTF8”; 这是数据库的连接路径
“jdbc”是协议开头。
“mysql”是子协议数据库名称,代表数据库是mysql。
“//localhost:3306”是服务器的IP地址和端口,“zhaowejie?”代表你要连接得数据库的名字。
“useUnicode=true&characterEncoding=UTF8” 指定操作数据库使用utf-8字符编码进行操作。
③ private static final String USER = "root"; 数据库连接名。
④ private static final String USER = “root”; 数据库连接密码
测试成功
源码如下:
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Statement;
public class a_JDBC {
private static final String URL = "jdbc:mysql://localhost:3306/bos?"+ "useUnicode=true&characterEncoding=UTF8";
private static final String USER = "root";
private static final String PASSWORD = "123456";
public static void main(String[] args) {
Connection conn = null;
Integer id = 0;
String userName = null;
String userPassWord = null;
try {
// 1.加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 2.获得数据库的连接
conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 3.通过数据库的连接操作数据库,实现增删改查(使用Statement类)
//query(conn, 1);
insert(conn, 7, "zhaoweijie7", "123445");
//update(conn, "ws", "23456", 1);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 查询
private static void query(Connection conn, Integer id) throws SQLException {
String sql = "SELECT id, userName , PassWord FROM t_user WHERE id = ?";
PreparedStatement ps = null;
ResultSet rs = null;
try {
ps = conn.prepareStatement(sql);
ps.setInt(1, id);
rs = ps.executeQuery();
while (rs.next()) {
id = rs.getInt(1);
String userName = rs.getString(2);
String userPassWord = rs.getString(3);
System.out.println("_id=" + id + " _userName=" + userName + " _userPassWord=" + userPassWord);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
rs.close();
conn.close();
ps.close();
}
}
/**
* 插入 insert
* @param conn
* @param id
* @param userName
* @param userPassWord
* @throws SQLException
*/
//
private static void insert(Connection conn, Integer id, String userName, String PassWord) throws SQLException {
int i = 0;
// sql 插入的语句
String s = "" + "insert into t_user(id,username,password) values(?,?,?)";
PreparedStatement ps = null;
// ResultSet rs=null;
try {
ps = conn.prepareStatement(s);
ps.setInt(1, id);
ps.setString(2, userName);
ps.setString(3, PassWord);
i = ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
// rs.close();
conn.close();
ps.close();
System.out.println("插入成功");
}
}
//更新 update
private static void update(Connection conn, String userName, String userPassword, Integer id) throws SQLException {
int i = 0;
String sql = "update users set userName = " + "'" + userName + "'" + "," + "userPassword = " + "'"+ userPassword + "'" + " " + "where id = " + id;
Statement ps = null;
// ResultSet rs=null;
try {
// ps = conn.prepareStatement(sql);
ps = (Statement) conn.createStatement();
i = ps.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
} finally {
// rs.close();
conn.close();
ps.close();
}
}
}
总结
任重而道远,加油!!!
以上是关于java海中信真实面试_手写map键值对写入值和取值HashMap字符串转double格式化double保留两位小数字符串转成日期格式css内边距外边距垂直对齐垮单元格的主要内容,如果未能解决你的问题,请参考以下文章
java真实面试_深圳百纳九州_java的基本数据类型有几种,并且写出全部的数据类型写出常用的Linux命令finalfinalize和finnally的不同之处用java手写一个单例类