小编use*_*330的帖子

当使用va_arg传递char*时,将char*转换为JNI中的jstring

是否有必要将char*转换为jbyteArray,然后调用java String的构造函数来生成jstring?怎么办呢?请帮忙.

static int testhandler(void *arg, ...)
 {
    int i;
    struct callback *cb = (struct callback *)arg;

    JNIEnv *env = cb->env;
    char *sig = cb->signature;

    jint size = (jint) strlen(sig);
    jint size1;
    va_list arguments;

    jobjectArray return_array;
    jclass obj_class;
    jbyteArray bytes;
    jstring str;

    obj_class = (*env)->FindClass(env, "java/lang/Object");
    return_array = (*env)->NewObjectArray(env, size, obj_class, NULL);

    va_start(arguments, arg);

    for (i = 0; i < size; i++) {
        jclass clazz;
        jmethodID id;
        jobject obj;
        jobject encoding;
        switch (sig[i]) {
            case 'i': {
                clazz = (*env)->FindClass(env, …
Run Code Online (Sandbox Code Playgroud)

c++ java java-native-interface

11
推荐指数
2
解决办法
4万
查看次数

增强了循环开始部分通过List

我是Java的初学者,我有这个疑问.是否可以在ArrayList上使用Java中的Enhanced for循环,但是从指定的点而不是ArrayList [0]开始.

For eg. ArrayList<Integer> calc = new ArrayList<Integer>;
       // calc contains {0,1,2,3,4,5,6,7}
Run Code Online (Sandbox Code Playgroud)

我可以使用增强的for循环并从calc [2]而不是calc [0]开始迭代吗?如果可能的话,我该怎么做?在我的特定情况下,使用增强的for循环会更好,而不是正常的for循环.

java for-loop list

7
推荐指数
2
解决办法
2419
查看次数

树状图和并发跳过列表图之间的区别?是否可以将 NavigableMap 与重复键的映射结构一起使用?

我是 Java 初学者。我有一个方法如下:

 public void time_filter(Long t1, Long t2){
    NavigableMap<Long, Operations_enter> time_map = new TreeMap<Long, Operations_enter>();
    for(int i=0; i< tm.size();i++){
        Operations_enter op = new Operations_enter();
        op.cpuid_enter = cpu.get(i);
        op.func_enter = stt.get(i);
        op.time_enter = tm.get(i);
        op.src_enter = tok.get(i);

        time_map.put(op.time_enter, op);

    }


    for(Map.Entry<Long, Operations_enter> entry: time_map.subMap(t1, true, t2, true).entrySet()){
        Integer time_func = entry.getValue().func_enter;
        System.out.println(" Filtered function numbers corresponding to given time range is" + time_func);

        }
Run Code Online (Sandbox Code Playgroud)

正如上面所看到的,我实现了一个NavigableMapwithTreeMap并且我能够使用subMapNavigableMap 中的方法过滤给定范围。但我现在有一个问题,time_enter包含一些重复的键,所以当我使用 时TreeMap,这些值会被最新添加的重复值覆盖。我明白这就是TreeMap工作原理。我也尝试使用ConcurrentSkipListMap …

java dictionary

2
推荐指数
1
解决办法
6579
查看次数

使用Java访问类中的每个成员,如在C中的struct中

我是Java的初学者.我读到structsC中的类似于Java中的类,但我有以下疑问.

我有一个课程如下:

public class operations {
    public Integer[] stream;
    public Integer[] functi;
    public String[] name;
    public Integer[] funcgroup;
}
Run Code Online (Sandbox Code Playgroud)

我从用户那里得到一个输入name,并将其与类中的name数组进行比较,如果匹配,我想返回与该名称对应的所有其他字段的记录.

例如.如果名称对应String[5]的话,我想对应的[5] ..即输出的所有记录stream[5],functi[5],functigroup[5].

我怎样才能做到这一点?

编辑现在我的程序看起来像这样:

public class operations extends DefFunctionHandler {
public ArrayList<Integer> stre = null;
public ArrayList<Integer> functii = null;
public ArrayList<String> nmee = null;
public ArrayList<Integer> funcigroup = null;
public ArrayList<Integer> sourcee = null;

public void filter(String x){
    DefFunctionHandler defi = new DefFunctionHandler();
    functii = defi.getFunc();
    stre …
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
117
查看次数

标签 统计

java ×4

c++ ×1

dictionary ×1

for-loop ×1

java-native-interface ×1

list ×1