我在我的代码中发现了一个问题.首先是代码:
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
String[] blablubb = { "a", "b", "c" };
for(String s : blablubb) {
s = "over";
}
printArray(blablubb);
for (int i = 0; i < blablubb.length; i++) {
blablubb[i] = "over";
}
printArray(blablubb);
}
public static void printArray(String[] arr) {
for( String s : arr ) {
System.out.println(s);
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出是:
a
b
c
over
over
over
Run Code Online (Sandbox Code Playgroud)
我假设第一个循环也会覆盖数组中的String.所以输出在任何情况下都会结束.它似乎创建了值的副本而不是创建引用.我从未察觉过这一点.我做错了吗?是否有选项来创建引用?
//编辑:除了我之外,似乎每个人都知道这一点.我来自C背景,并没有足够重视与C非常不同的术语参考.幸运的是,我花了10分钟来计算出来(这一次).
我尝试从a实现回调DialogFragment.有一个很好的例子,但他们不会DialogFragment从一个开放Fragment.
http://developer.android.com/guide/topics/ui/dialogs.html#PassingEvents
所以这是我的代码:
public class EditDateDialogFragment extends DialogFragment {
// Use this instance of the interface to deliver action events
EditDateDialogListener mListener;
/* The activity that creates an instance of this dialog fragment must
* implement this interface in order to receive event callbacks.
* Each method passes the DialogFragment in case the host needs to query it. */
public interface EditDateDialogListener {
public void onDialogPositiveClick(DialogFragment dialog);
public void onDialogNegativeClick(DialogFragment dialog);
}
public static …Run Code Online (Sandbox Code Playgroud) android callback android-fragments android-dialog android-dialogfragment
我想将所有文件复制到另一个目录(使用 grunt-contrib-copy),除了 .gitignore 中列出的文件。这是我当前的设置:.gitignore:
/vendor
/node_modules
Run Code Online (Sandbox Code Playgroud)
包.json:
{
"name": "grunt-cpy",
"version": "1.0.0",
"description": "",
"main": "Gruntfile.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"gitignore-globs": "^0.1.1",
"grunt": "^0.4.5",
"grunt-cli": "~0.1.11",
"grunt-contrib-copy": "^0.7.0",
"grunt-contrib-clean": "^0.6.0"
}
}
Run Code Online (Sandbox Code Playgroud)
Gruntfile.js
module.exports = function (grunt) {
var parse = require('gitignore-globs');
var globs = parse('.gitignore', { negate: true } );
grunt.log.ok( globs );
// Project configuration.
grunt.initConfig({
pkg : grunt.file.readJSON( 'package.json' ),
clean: {
pre_build: …Run Code Online (Sandbox Code Playgroud)