程序设计

专业和发烧友程序员的问答

25
没有单独的Javascript文件的网络工作者?
据我所知,网络工作者需要用一个单独的JavaScript文件编写,并按如下方式调用: new Worker('longrunning.js') 我正在使用闭包编译器来合并和最小化我的所有JavaScript源代码,而我不必将我的工作人员放在单独的文件中进行分发。有什么办法可以做到这一点? new Worker(function() { //Long-running work here }); 鉴于一流的功能对于JavaScript至关重要,为什么进行后台工作的标准方法必须从Web服务器加载整个其他JavaScript文件?

22
我如何看待Python对象内部?
我开始使用Python在各种项目中进行编码(包括Django Web开发和Panda3D游戏开发)。 为了帮助我理解发生了什么,我想基本上在Python对象内部“看”看它们如何打勾-像它们的方法和属性一样。 假设我有一个Python对象,我需要打印出什么内容?那有可能吗?

24
Android M权限:未调用onRequestPermissionsResult()
我正在更新我们的应用程序以使用新的M运行时权限系统。除了onRequestPermissionsResult()外,其他所有功能都可以使用。我需要检查按下按钮的权限,如果成功,请发送短信。当我授予执行权限时,对话框关闭,但是直到再次按下按钮时,它才触发“发送文本”。 我已经在onRequestPermissionsResult()方法中调试并设置了断点,但是它从来没有涉及到它。 首先调用此方法: private void askForPermission() { String[] permissions = new String[]{Manifest.permission.SEND_SMS}; ActivityCompat.requestPermissions(getActivity(), permissions, PERMISSIONS_CODE); } 然后我的回调如下所示: @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if (requestCode == PERMISSIONS_CODE) { for (int i = 0; i < permissions.length; i++) { String permission = permissions[i]; int …

7
JavaLaunchHelper类在两个地方实现
是JDK吗?堆栈溢出:КакразрешитьконфликтдвухJDK? 今天,我在macOS Sierra上升级了Intellij Idea,现在,当我在控制台中运行应用程序时,出现此错误: objc [3648]:在/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java(0x10d19c4c0)和/Library/Java/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/中都实现了JavaLaunchHelper类目录/主页/jre/lib/libinstrument.dylib(0x10ea194e0)。将使用两者之一。哪一个未定义。

10
迭代Android游标的最佳方法是什么?
我经常看到一些代码,其中涉及遍历数据库查询的结果,对每一行进行处理,然后移至下一行。典型示例如下。 Cursor cursor = db.rawQuery(...); cursor.moveToFirst(); while (cursor.isAfterLast() == false) { ... cursor.moveToNext(); } Cursor cursor = db.rawQuery(...); for (boolean hasItem = cursor.moveToFirst(); hasItem; hasItem = cursor.moveToNext()) { ... } Cursor cursor = db.rawQuery(...); if (cursor.moveToFirst()) { do { ... } while (cursor.moveToNext()); } 这些对我来说似乎太冗长了,每个都有多次调用Cursor方法。肯定有更整洁的方法吗?
291 android  cursor 



18
如何向数组添加新元素?
我有以下代码: String[] where; where.append(ContactsContract.Contacts.HAS_PHONE_NUMBER + "=1"); where.append(ContactsContract.Contacts.IN_VISIBLE_GROUP + "=1"); 这两个附录未编译。那将如何正常工作?
291 java  arrays  string 



18
使用Java获取当前计算机的IP地址
我正在尝试开发一个系统,其中有不同的节点在不同的系统或同一系统的不同端口上运行。 现在,所有节点都使用目标IP创建一个套接字,该目标IP是称为自举节点的特殊节点的IP。然后,节点创建自己的节点ServerSocket并开始侦听连接。 引导节点维护节点列表,并在查询时返回它们。 现在,我需要的是该节点必须将其IP注册到引导节点。cli.getInetAddress()一旦客户端连接到ServerSocket引导节点的节点,我就尝试使用该方法,但这没有用。 我需要客户端注册其PPP IP(如果有); 否则,LAN IP(如果有); 否则,它必须使用相同的计算机注册127.0.0.1。 使用代码: System.out.println(Inet4Address.getLocalHost().getHostAddress()); 要么 System.out.println(InetAddress.getLocalHost().getHostAddress()); 我的PPP连接IP地址是:117.204.44.192但以上返回我192.168.1.2 编辑 我正在使用以下代码: Enumeration e = NetworkInterface.getNetworkInterfaces(); while(e.hasMoreElements()) { NetworkInterface n = (NetworkInterface) e.nextElement(); Enumeration ee = n.getInetAddresses(); while (ee.hasMoreElements()) { InetAddress i = (InetAddress) ee.nextElement(); System.out.println(i.getHostAddress()); } } 我可以获取所有与all关联的IP地址NetworkInterface,但是如何区分它们呢?这是我得到的输出: 127.0.0.1 192.168.1.2 192.168.56.1 117.204.44.19
291 java  sockets  ip 


27
当我尝试在设备上安装已编译的.apk时,INSTALL_FAILED_UPDATE_INCOMPATIBLE
我已经从CyanogenMod 9编译了Trebuchet启动器,并尝试使用adb安装它: $ adb install out/target/product/generic/system/app/Trebuchet.apk 3986 KB/s (7870141 bytes in 1.928s) pkg: /data/local/tmp/Trebuchet.apk Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE] 我尝试使用CM9的Nexus S和带有股票JB的Galaxy Nexus。为什么我收到此错误? 编辑:就我而言,我尝试使用软件包管理器重新安装系统软件包。不支持该功能,因此出现此错误。错误的来源可能因您而异。

16
使用字符串格式最多显示两位小数或简单整数
我有一个要显示的价格字段,有时可以是100或100.99或100.9,我要显示的是仅在为该价格输入小数时才在2个小数位显示价格,例如,如果它是100,则仅显示100而不是100.00,如果价格是100.2,则应显示100.20,对于100.22应该相同。我用谷歌搜索并遇到了一些例子,但它们与我想要的完全不匹配: // just two decimal places String.Format("{0:0.00}", 123.4567); // "123.46" String.Format("{0:0.00}", 123.4); // "123.40" String.Format("{0:0.00}", 123.0); // "123.00"


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.