博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
atitit.复合变量,也就是类似$$a的变量的原理与实现 java c#.net php js
阅读量:5036 次
发布时间:2019-06-12

本文共 2039 字,大约阅读时间需要 6 分钟。

 atitit.复合变量,也就是类似$$a的变量的原理与实现 java c#.net php js

 

 

1.1. 复合变量,也就是类似$$a的变量,它会进行两次的解释。 1

1.2. 数据库里面的复合变量1

1.3. 为什么只有php实现了符合变量,因为他的美元符号2

1.4. 符合变量的本质其实就是指针了2

2使用java实现符合变量2

2.1. invoke2

2.2. 实现2

3参考4

 

 

 

1.1. 复合变量,也就是类似$$a的变量,它会进行两次的解释。

这给PHP带来了非常灵活的动态特性。

 

1.2. 数据库里面的复合变量

记录(Record)

什么是记录:

记录是由几个相关值构成的复合变量,常用于支持SELECT语句的返回值。使用记录可以将一行数据看成是一个单元进行处理,而不必将每一列单独处理,和面向对象程序设计语言里面的对象或者C语言的结构体类似。

PLSQL复合变量

    复合变量指用于存放多个值的变量。定义复合变量时,必须要使用PL/SQL的复合数据类型。PL/SQL包括

PL/SQL记录、PL/SQL表、嵌套表及VARRAY等四种复合数据类型。

 

 

 

1.3. 为什么只有php实现了符合变量,因为他的美元符号

Dollar继承自perl。。。

Dollar也不是必须的。。只需要在使用的时候致命dollarok懒。。Not nessury  var must  dollar start。。

 

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

1.4. 符合变量的本质其实就是指针了

2. 使用java实现符合变量

2.1. invoke

import static aaa.VarUtil.*;

public class DynaVar {

 

public static void main(String[] args) {

 

 

def("$a","v_a");

def("$b""a");

echo($("$b"));

echo($("$$b"));

}

 

2.2. 实现

 

package aaa;

 

import java.util.Map;

 

import com.attilax.lang.AString;

import com.google.common.collect.Maps;

 

public class VarUtil {

public static Map vars_map=Maps.newConcurrentMap();

/**

 * //var use

 * @param var_name

 * @return

 */

public static Object $(String var_name) {

int dollarIndex=var_name.lastIndexOf("$");

if(dollarIndex==0)

return  vars_map.get(var_name);

String left=AString.Left(var_name, dollarIndex);

String rit=  var_name.substring(dollarIndex);

char[] a=left.toCharArray();

Object var_v= vars_map.get(rit);

for (int i = 0; i < a.length; i++) {

String new_var_name="$"+var_v.toString();

var_v=vars_map.get(new_var_name);

}

return var_v;

}

 

////var define

public static void def(String var_name, String var_val) {

vars_map.put(var_name, var_val);

}

public static void echo(Object get_var) {

System.out.println(get_var);

}

/**

 * //var use

 * @param var_name

 * @return

 */

//public static Object $(String var_name) {

//// TODO Auto-generated method stub

//return vars_map.get(var_name);

//}

 

 

}

 

3.  参考

PLSQL复合变量与参照变量 蓝紫 博客园.htm

 

转载于:https://www.cnblogs.com/attilax/p/5963537.html

你可能感兴趣的文章
手把手教你写DI_1_DI框架有什么?
查看>>
.net常见的一些面试题
查看>>
OGRE 源码编译方法
查看>>
上周热点回顾(10.20-10.26)
查看>>
C#正则表达式引发的CPU跑高问题以及解决方法
查看>>
云计算之路-阿里云上:“黑色30秒”走了,“黑色1秒”来了,真相也许大白了...
查看>>
APScheduler调度器
查看>>
设计模式——原型模式
查看>>
【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.1.CSS框架和其他功能
查看>>
如何一个pdf文件拆分为若干个pdf文件
查看>>
web.xml中listener、 filter、servlet 加载顺序及其详解
查看>>
前端chrome浏览器调试总结
查看>>
获取手机验证码修改
查看>>
数据库连接
查看>>
python中数据的变量和字符串的常用使用方法
查看>>
等价类划分进阶篇
查看>>
delphi.指针.PChar
查看>>
Objective - C基础: 第四天 - 10.SEL类型的基本认识
查看>>
java 字符串转json,json转对象等等...
查看>>
极客前端部分题目收集【索引】
查看>>