小编ace*_*ace的帖子

Java和C++按值传递并通过引用传递

据说在Java方法中,参数是通过值传递的,对于基元和对象都是如此,对象的引用是按值传递的.为了说明考虑代码:

class Test {
 private static void dateReplace (Date arg) {
        arg = new Date (arg.getYear(), arg.getMonth(), arg.getDate() +1);
        System.out.println ("arg in dateReplace: " + arg);
    }

 public static void main(String[] args) {

      Date d1 = new Date ("1 Apr 2010");
        dateReplace(d1);
        System.out.println ("d1 after calling dateReplace: " + d1);
    }
}

this will print:
arg in dateReplace: Fri Apr 02 00:00:00 2010
d1 after calling dateReplace: Thu Apr 01 00:00:00 2010.
Run Code Online (Sandbox Code Playgroud)

什么是C++等价物,会产生相同的结果?

什么是C++等价物,在调用方法后将d1的值赋予与方法中相同的值,即调用者看到修改后的值?

c++ java

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

Android WebView无法正确显示网页

我有这样简单的WebView代码:

WebView wv = (WebView) findViewById(R.id.webview1);                  

        wv.loadUrl("http://en.wikipedia.org/wiki/Book");  
Run Code Online (Sandbox Code Playgroud)

但显示的页面显示维基百科的内容,就好像它是桌面浏览器,在手机上看起来相当丑陋.如果我使用浏览器应用程序在我的手机上访问维基百科网站,那么它会根据手机布局正确显示内容.

我尝试在webview中设置用户代理字符串,但这也无济于事.

有人有解决方案吗?

android

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

在不使用BigInteger的情况下处理Java中的溢出

假设我有一个方法来计算来自n个项目的r个项目的组合:

    public static long combi(int n, int r) {

        if ( r == n) return 1;
        long numr = 1;
        for(int i=n; i > (n-r); i--) {
            numr *=i;

        }
        return numr/fact(r);

    }


public static long fact(int n) {

        long rs = 1;
        if(n <2) return 1;
        for (int i=2; i<=n; i++) {
            rs *=i;
        }
        return rs;

    }
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,它涉及到阶乘,它很容易溢出结果.例如,如果我对于foctorial方法有事实(200),我得到零.问题是为什么我得零?

其次,我如何在上面的上下文中处理溢出?如果结果太大而不是返回错误答案,则该方法应返回最大可能的数字以适合长.

一种方法(但这可能是错误的)是,如果结果超过一些大数,例如1,400,000,000,那么返回结果的余数为1,400,000,001.你能解释一下这意味着什么,我怎么能用Java做到这一点?

请注意,我不保证上述方法对于计算阶乘和组合是准确的.如果您能找到错误并纠正错误,可获得额外奖励.

请注意,我只能使用int或long,如果不可避免,也可以使用double.不允许使用其他数据类型.

我不确定是谁将这个问题标记为作业.这不是功课.我希望这是家庭作业,我回到了未来,大学的年轻学生.但我已经老了十多年,当过程序员.我只想练习用Java开发高度优化的解决方案.在我们大学时代,互联网甚至不存在.今天的学生很幸运,他们甚至可以像SO一样在网站上发布作业.

java

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

是否可以在iPhone模拟器上安装iPhone应用程序?

安装xcode ios SDK后,我现在可以运行iPhone模拟器了.现在是否可以安装和运行第三方免费iPhone应用程序,如Paper Glider,就像在真正的iPhone上一样,以及如何做到这一点?

iphone ios-simulator

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

在Java中查找顶点法线的代码?

我从这个来源 C中有这个代码:

#import <Foundation/Foundation.h>
#import "OpenGLCommon.h"

int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    NSMutableString *result = [NSMutableString string];

    static const Vertex3D vertices[]= {
        {0, -0.525731, 0.850651},             // vertices[0]
        {0.850651, 0, 0.525731},              // vertices[1]
        {0.850651, 0, -0.525731},             // vertices[2]
        {-0.850651, 0, -0.525731},            // vertices[3]
        {-0.850651, 0, 0.525731},             // vertices[4]
        {-0.525731, 0.850651, 0},             // vertices[5]
        {0.525731, 0.850651, 0},              // vertices[6]
        {0.525731, -0.850651, 0},             // vertices[7]
        {-0.525731, -0.850651, 0},            // vertices[8]
        {0, -0.525731, …
Run Code Online (Sandbox Code Playgroud)

java android opengl-es objective-c

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

Play Framework如何使部署比传统Java框架运行速度更快的Web应用程序成为可能?

Play Framework不遵循Java Servlet规范.我试图了解如何使用Play Framework开发的Web应用程序运行速度比使用Struts或Spring MVC开发相同的应用程序时更快?

如果我在Tomcat下部署Play框架开发的应用程序而不是使用Netty,它会如何影响性能?

playframework

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

在Java Servlet的上下文中,URL重写和转发有什么区别?

作为Java Web应用程序的开发人员,我何时需要使用URL重写以及URL重写和转发之间的区别?

我在其他网站上搜索,我得到的是相互矛盾的信息,这取决于你所说的人,SEO人会以不同的方式回答这个问题.

在两种情况下,AFAIK都不会通知客户端(浏览器)更改,并且最终用户看到客户端在从服务器返回休止符时最初请求的完全相同的URL.

请问这个问题是在Java Servlet API的上下文中,其中定义了forward方法和sendRedirect方法,其中重定向和转发完全是两个不同的东西.这个问题是关于forward(由Servlet API中的forward方法定义)和URL重写之间的区别.问题清楚地表明答案应该在Java servlet的上下文中.最重要的是,我何时需要使用URL重写,再次在开发Java Web应用程序的上下文中.

java servlets http

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

如何在spring java应用程序中缓存图像文件?

在我面向公众的 Web 应用程序中,图像(连同元数据)的显示方式就像使用 Spring 框架开发的相册应用程序一样。我想要的是将文件系统中的所有图像(数以千计)缓存在 RAM 中,以便在 HTML 中遇到类似图像标记时:

<img src="images/folder1/subfolder/myimage.jpg" />

图像是从缓存内存中提供的,而不是由 tomcat 网络服务器从磁盘提供的,以实现高性能。

如何在 spring 框架 web 应用程序中实现这一点?

如果使用 mongodb 来存储图像元数据等 Web 内容,如何在同一个 Spring Web 应用程序中实现上述场景?

所以有两个答案,一个不涉及 mongodb,一个涉及 mongodb。

java spring caching mongodb

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

如何在nginx的非标准端口上运行php?

我在 ubuntu 服务器上的节点应用程序的标准端口 80 上运行 nginx。/etc/nginx/sites-available/default 是:

server {

    listen 80;
    server_name example.com;
    location / {

        proxy_pass http://localhost:3333;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
     }
}
Run Code Online (Sandbox Code Playgroud)

我已经安装了php7. 我想使用 nginx 在端口 8585 上提供 php 文件。因此 example.com:8585/info.php 指向文件系统上的 /var/www/html/info.php 。

如何解决这个问题呢?

php nginx

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

Java泛型<?>以及如何在Scala中处理它?

我有一个API(来自第三方java库),看起来像:

    public List<?> getByXPath(String xpathExpr)
Run Code Online (Sandbox Code Playgroud)

在名为DomNode的类上定义

我在scala函数中尝试这个:

1: def removeChild(node: DomNode, xpath: String) {
2:               val lst: List[?] =  node.getByXPath(xpath)
3:      val child: DomNode = lst(0)
4:                child.getParentNode().removeChild(child)
    }
Run Code Online (Sandbox Code Playgroud)

但它不会在scala中编译.我在第2行得到错误.

根据答案,我修改了它,现在它是:

1: def removeChild(node: DomNode, xpath: String) {
2:            val lst = node.getByXPath(xpath)
3:            val child = lst(0).asInstanceOf[DomNode]            
4:            child.getParentNode().removeChild(child)
    }
Run Code Online (Sandbox Code Playgroud)

现在我在第3行得到错误:java.util.List类型的lst [?0]不接受参数

我也尝试了val lst: List[_] = node.getByXPath(xpath) 但是这给了我同样的错误:

type mismatch;
 found : java.util.List[?0] where type ?0
 required: scala.List[_]
Run Code Online (Sandbox Code Playgroud)

所以我仍然被困住了.

scala

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

在Scala中迭代涉及Java泛型<?>的java List

我有一个API(来自第三方java库),看起来像:

public List<?> getByXPath(String xpathExpr)

defined on a class called DomNode
Run Code Online (Sandbox Code Playgroud)

我在scala中尝试这个:

node.getByXPath(xpath).toList.foreach {node: DomElement => 

   node.insertBefore(otherNode)   

}
Run Code Online (Sandbox Code Playgroud)

但是我在node.getByXPath上遇到编译错误.错误:"类型不匹配;找到:(com.html.DomElement)=>所需单位:(?0)=>?其中type?0"

如果我将其更改为:

node.getByXPath(xpath).toList.foreach {node => 

   node.insertBefore(otherNode)   

}
Run Code Online (Sandbox Code Playgroud)

然后错误消失但是我在node.insertBefore(otherNode)错误上得到错误:"value insertBefore不是?0的成员"

这个问题的答案是什么?

scala

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

当mongodb模型中的int字段在数据库中具有空值时,Spring Boot抛出异常

我遇到一种情况,当用户没有为某个字段输入数据时,我将 null 作为该 int 字段的值传递,以表示用户没有输入任何值,例如

{user: 'John',
 age: null}
Run Code Online (Sandbox Code Playgroud)

但是当我在 Spring Boot 应用程序中阅读此类文档时,当它遇到上述文档时,会抛出

Caused by: java.lang.IllegalArgumentException: Parameter age must not be null!
Run Code Online (Sandbox Code Playgroud)

mongodb 中允许使用 null 值还是 Spring Boot 做错了什么?

我尝试过了:

@Data
@Document
public class User {
    final private String user;
    @org.springframework.lang.Nullable    
    final private int age;
}
Run Code Online (Sandbox Code Playgroud)

但这没有什么区别。除了不存储 null 之外(因为 null 已经填充在另一个节点/mongoose 应用程序中(它很乐意存储和读取 null 值,没有任何问题)使用相同的 mongodb 数据库),如何解决这个问题?

mongoose mongodb spring-boot

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

是否可以从命令行下载并运行GUI Scala Console?

Groovy有一个很好的GUI控制台,我可以在其中输入任何java/groovy代码并运行.这与groovy一起分发.

至于我知道除了REPL之外,Scala没有这样的东西.

是否有任何第三方Scala GUI控制台,我可以从命令行下载并安装和运行,而不是使用webstart从JNLP文件中运行?

一个用例:

假设我有Scala程序:

val lineWidth = 2.5
val axisWidth = 1.5
val white = ConstVec3(1)
val background = white
val axisColor = ConstVec3(0)

drawFunction("Plot") { (dims, pixel) =>
  val mid = dims/2.0
  val p = pixel - mid

  val color: Vec3 = background

  color *= {
    val shade = clamp(abs(p.x)/axisWidth, 0, 1)
    mix(axisColor, background, shade)
  }
  color *= {
    val shade = clamp(abs(p.y)/axisWidth, 0, 1)
    mix(axisColor, background, shade)
  }

  color *= {
    val scale = 2/mid.x

    val …
Run Code Online (Sandbox Code Playgroud)

user-interface scala

-5
推荐指数
1
解决办法
2177
查看次数