List的设置值,跟变量的位置关系(变量范围的变化导致结果差别很大)
我们想要的结果是:
[RegnTypeCharge: null,null,null,null,1,null,null,null,null,null,null,null,null,null,null,]
[RegnTypeCharge: null,null,null,null,hehe,null,null,null,null,null,null,null,null,null,null,]
com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView@addbf1
com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView@42e816
需要的代码是:
package com.kompakar.ehealth.server.regn.mstr.common.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.kompakar.ehealth.model.bridge.bo.RegnTypeCharge;
import com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
RegnTypeCharge bo = new RegnTypeCharge();
bo.setVisitType("1");
RegnTypeCharge bo2 = new RegnTypeCharge();
bo2.setVisitType("hehe");
List<RegnTypeCharge> list = new ArrayList<RegnTypeCharge>();
list.add(bo);
list.add(bo2);
List<RegnTypeChargeView> list2 = new ArrayList<RegnTypeChargeView>();
// RegnTypeChargeView view = new RegnTypeChargeView();
for(int i=0; i < list.size(); i++){
RegnTypeChargeView view = new RegnTypeChargeView();
view.setRegnTypeCharge(list.get(i));
list2.add(view);
}
System.out.println(list2.get(0).getRegnTypeCharge());
System.out.println(list2.get(1).getRegnTypeCharge());
System.out.println(list2.get(0));
System.out.println(list2.get(1));
}
}
而如果这么写的话:
package com.kompakar.ehealth.server.regn.mstr.common.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.kompakar.ehealth.model.bridge.bo.RegnTypeCharge;
import com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
RegnTypeCharge bo = new RegnTypeCharge();
bo.setVisitType("1");
RegnTypeCharge bo2 = new RegnTypeCharge();
bo2.setVisitType("hehe");
List<RegnTypeCharge> list = new ArrayList<RegnTypeCharge>();
list.add(bo);
list.add(bo2);
List<RegnTypeChargeView> list2 = new ArrayList<RegnTypeChargeView>();
RegnTypeChargeView view = new RegnTypeChargeView();
for(int i=0; i < list.size(); i++){
// RegnTypeChargeView view = new RegnTypeChargeView();
view.setRegnTypeCharge(list.get(i));
list2.add(view);
}
System.out.println(list2.get(0).getRegnTypeCharge());
System.out.println(list2.get(1).getRegnTypeCharge());
System.out.println(list2.get(0));
System.out.println(list2.get(1));
}
}
将导致这样的结果
[RegnTypeCharge: null,null,null,null,hehe,null,null,null,null,null,null,null,null,null,null,]
[RegnTypeCharge: null,null,null,null,hehe,null,null,null,null,null,null,null,null,null,null,]
com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView@addbf1
com.kompakar.ehealth.model.regn.mstr.common.view.RegnTypeChargeView@addbf1
List的设置值,跟变量的位置关系(变量范围的变化导致结果差别很大)的更多相关文章
- Win10下设置GOPATH系统变量,查看go env没有变化
前言 最近在学习go语言,下载了golang安装包安装之后,使用go env查看环境变量,发现GOPATH已经指向默认的目录了 按照安装手册去系统变量设置了一下GOPATH,指向自定义目录 再来运行一 ...
- C语言函数返回值和变量类型
前言 最近在刷题,在写矩阵的快速幂的题时,对于返回值是数组的程序,写的十分冗杂.借此机会,重新梳理下C语言中函数的返回值与变量类型的关系. 按照变量的寿命,可以分为三种类型 1.静态变量 寿命从程序开 ...
- Mac 可设置环境变量的位置、查看和添加PATH环境变量
Mac 启动加载文件位置(可设置环境变量) ------------------------------------------------------- (1)首先要知道你使用的Mac OS X是什 ...
- Mac可设置环境变量的位置、查看和添加PATH环境变量
Mac 启动加载文件位置(可设置环境变量) 首先要知道你使用的 Mac OS X 是什么样的 Shell,使用命令 echo $SHELL 如果输出的是:csh 或者是 tcsh,那么你用的就是 C ...
- .NET Core程序中,如何获取和设置操作系统环境变量的值
有时候我们在.NET Core程序中需要获取和设置操作系统环境变量的值.本文演示如何使用Environment.GetEnvironmentVariable和Environment.SetEnviro ...
- 在tomcat启动时解析xml文件,获取特定标签的属性值,并将属性值设置到静态变量里
这里以解析hibernate.cfg.xml数据库配置信息为例,运用dom4j的解析方式来解析xml文件. 1.在javaWeb工程里新建一个java类,命名为GetXmlValue.java,为xm ...
- Linux 启动文件、设置环境变量的位置
系统级启动文件 ==================================== 1./etc/rc 主启动文件,不要修改它 2./etc/rc.conf 决定启动哪些系统自带的守护进程 ...
- 第三章:Javascript类型、值和变量。
计算机程序的运行需要对值(value)比如数字3.14或者文本"hello world"进行操作,在编程语言中,能够表示并操作的值的类型叫做数据类型(type),编程语言最基本的特 ...
- Cookie获取、设置值
设置: HttpCookie cookie = new HttpCookie("cookieName"); cookie.Value = "name1" Htt ...
随机推荐
- GI缓存
GI缓存 设置 属性 最大高速缓存大小(GB) 使用滑块设置最大GI缓存文件夹大小.只要可能,GI缓存文件夹将保持在此大小以下.定期删除未使用的文件以创建更多空间.这是由编辑器自动执行,不需要你做任何 ...
- Springboot 整合 中国移动MAS HTTP1.0 实现短信发送服务(二)
原因:身份验证传入的参数包含中文企业名,因为本地编码格式是支持中文的:而客户的服务器中文却乱码,导致传给中国移动MAS服务器的是乱码的信息. 解决:非常简单,将中文信息转为UTF-8.例如(%E5%8 ...
- win10系统常用操作
1.打开控制面板 (1)选中“此电脑”,右键选择“属性”. (2)可见 控制面板主页 2.设置环境变量和系统变量 (1)选中“此电脑”,右键选择“属性”. (2)可见 控制面板主页 (3)点击高级系统 ...
- LeetCode记录之20——Valid Parentheses
09.18更新算法采用栈的思想解决,方法①所示. 本题主要是找是否有匹配的字符串,因为还没有复习到栈之类的知识点,只能还是采用暴力方法了,后期会补上更加优化的算法.我的思路就是先遍历一遍找是否有匹配的 ...
- 使用Git向GitHub上上传代码
参考:http://www.cnblogs.com/yxhblogs/p/6130995.html 如果遇到[git无法pull仓库refusing to merge unrelated histor ...
- UVALive - 6952 DP 分段/隔板
题意:商品总价按四舍五入计算,n个物品最多可分\(d+1\)段,求最小代价 \(dp[i][j]\):\(j\)个物品分\(i\)段 注意一个技巧是只在需要分出新的段时才四舍五入(旧段结算),这样就避 ...
- Oracle子分区(sub partition)操作
要重新定义大量分区表. 首先看 SQL Reference 大致了解了 Oracle 的分区修改操作.Alter table 语句的alter_table_partitioning 子句可以分为以下几 ...
- DenyHosts 阻止SSH暴力攻击
当你的 Linux 服务器暴露在互联网之中,该服务器将会遭到互联网上的扫描软件进行扫描,并试图猜测SSH登录口令. 你会发现,每天会有多条SSH登录失败纪录.那些扫描工具将对你的服务器构成威胁,你必须 ...
- PIE SDK矢量唯一值渲染
1. 功能简介 图层的唯一值渲染即是根据矢量图层的某一个数值字段的属性值,按照值的不同大小设置不同的显示符号.属性数值相等的所有要素归为同一种类,即同一符号. 2. 功能实现说明 2.1. 实现思路及 ...
- Yii2 执行Save()方法失败,却没有错误信息
一般用$model->errors 就能查看到更新失败的原因,但是这次却什么错误信息都没有,最后发现是因为在模型类中定义了一个方法 public function beforeSave($ins ...